Ofcourse我可能做錯了什麼,但我不明白爲什麼以及如何。在php中禁用mysql autocommit不起作用
我想在php腳本中禁用autocommit。這是因爲我的個人php mysql框架是這樣工作的。但不知何故自動提交不能關閉。我使用Mysqli和engine = InnoDB表,我嘗試了mysqli :: autocommit功能以及全局和會話的mysql語句。
所有結果都在相同的答案:autocommit仍然是。沒有錯誤說我使用了不正確的語句被返回。查詢返回true,嘗試提交,返回true。
有什麼我在這裏失蹤?自動提交已被關閉運行時,因爲它將上運行的主機不允許我在服務器設置:)
在某些情況下爲我工作 - 您能分享任何代碼嗎?你如何設置/啓動交易?在運行命令之前,如何確保實際上處於事務中? – pagid 2012-01-02 23:55:58
你有沒有嘗試過'開始交易;'查詢? – 2012-01-03 00:31:27
好吧,目前我有自動提交,它表示自動提交值爲0.但即使如此,任何插入查詢以某種方式提交。我所做的就是關閉自動提交,運行插入查詢,然後運行一個保存點函數,它實際運行我的save($ commit = false)函數,它將執行插入操作,但不執行提交操作。奇怪的是,保存是唯一的函數使用mysqli_commit ... – 2012-01-03 08:54:56