Met mijn kleine testscript verschijnen er geen records voor de commit als ik inlog vanaf een andere console. Ik kan echter de zojuist ingevoegde records in dezelfde sessie selecteren. Dus ik neem aan dat je vóór de commit toegang hebt tot rijen die al in de tabel staan, maar nu nieuwe rijen of wijzigingen voordat ze worden vastgelegd.
<?php
require_once('db.php');
q( 'drop table if exists t' );
q( 'create table t (id integer not null auto_increment primary key, v datetime) engine=innodb' );
q( 'set transaction isolation level read uncommitted' );
q( 'start transaction' );
q( 'insert into t (v) values (now()),(now()),(now())' );
echo q1( 'count(*)', 't', 'true'); // translates to "select count(*) from t where true";
// echoes "3" to the console
// wait for input
$handle = fopen ("php://stdin","r");
$line = fgets($handle);
// with a mysql client from a 2nd console at this point no new records show in table t
q( 'commit' );
// after this point all new records show up in table t from a 2nd session.