PHP Mysqlとトランザクション
2013/04/07
PHPのPDO()じゃなくてMysql接続の関数?で使うトランザクション。
PDO()のトランザクション同様にまだ、試していない。とりあえずメモ。
$Connect = DBの接続先
mysql_query( "set autocommit = 0", $Connect ); //トランザクションをはじめる準備:「1」だとトランザクションにならない。
mysql_query( "begin", $Connect ); //トランザクション開始
mysql_query( "set autocommit = 0", $Connect ); //トランザクションをはじめる準備:「1」だとトランザクションにならない。
mysql_query( "begin", $Connect ); //トランザクション開始
$Query = "書込み的なクエリたち";
$result = mysql_query( $Query, $Conncet );
if( $result === true ){
//コミット
mysql_query( "commit", $Connect );
print "コミットしました";
}else{
//ロールバック
mysql_query( "rollback", $Connect );
print "ロールバックしました";
}
要は、複数の書込みをするならif文の「$result === true」ってヤツを「全てが成功したとき」って条件にすればいいんだな。
PDO()のは下記。
PHP PDOのトランザクション