私は何か間違っているかもしれませんが、なぜ、どのように理解できません。PHPでmysql自動コミットを無効にしてもうまくいきません
PHPスクリプトで自動コミットを無効にしたいと考えています。これは私の個人的なPHPのmysqlフレームワークがそのように動作するためです。まだ何らかの形で自動コミットをオフにすることはできません。私はエンジン= InnoDBテーブルでMysqliを使用しています。私はmysqli :: autocommit機能とグローバルとセッション用のmysql文を試しました。
すべてが同じ結果になります。自動コミットはまだオンです。誤った文を使用したというエラーは返されません。クエリはtrueを返し、コミットしようとしましたがtrueを返します。
私はここで何かが欠けていますか?自動コミットは、それが実行されるホストが、私は、サーバーの設定でそれを無効にすることはできませんので、:)デフォルトで
いくつかの状況で私のために働いた - これのためのコードを共有することはできますか?どのようにトランザクションをセットアップ/開始しますか?コマンドを実行する前に、実際にトランザクション中であることをどのように確認していますか? – pagid
'start transaction;'クエリを実行しようとしましたか? –
まあ、現在、私はautocommitをオフにしていますが、自動コミットの値は0だと言われていますが、それでも挿入クエリは何とかコミットされています。 @pageid、私はすべて自動コミットをオフにして、挿入クエリを実行し、実際には挿入を行う私のsave($ commit = false)関数を実行するsavepoint関数を実行します。奇妙なことは、mysqli_commitを使用している唯一の機能はsaveです... –