MySQL 是一種廣泛應用于 Web 應用程序開發的關系型數據庫管理系統。在 Web 應用程序開發中,經常會遇到網絡斷開的情況。如果此時正在處理一些數據,就會導致數據的丟失,使得用戶體驗變得不可靠。為了解決這個問題,我們可以將斷網期間產生的數據保存到同步模式下。
try { // 連接 MySQL 數據庫 $pdo = new PDO("mysql:host=localhost;dbname=mydb;charset=utf8", "username", "password"); // 設置 PDO 屬性 $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // 關閉自動提交 $pdo->beginTransaction(); // 執行 INSERT SQL 語句 $stmt = $pdo->prepare("INSERT INTO mytable (name, age) VALUES (:name, :age)"); $stmt->bindValue(':name', $name); $stmt->bindValue(':age', $age); $stmt->execute(); // 提交事務 $pdo->commit(); } catch (Exception $e) { // 回滾事務 $pdo->rollback(); // 將數據保存到同步模式下 $data = array( 'name' =>$name, 'age' =>$age ); $json = json_encode($data); file_put_contents('data.json', $json, FILE_APPEND); }
如上所示,我們在 try-catch 語句塊中執行了 INSERT SQL 語句,如果期間發生異常,則執行回滾事務操作,并將數據保存到同步模式下。保存方式為將數據編碼成 JSON 字符串,然后使用 file_put_contents 函數將其追加到 data.json 文件中。
當網絡恢復時,我們可以將 data.json 文件中的數據讀取出來,并執行相應的 INSERT SQL 語句,將數據再次保存到 MySQL 數據庫中。
上一篇mysql斷電后重啟報錯
下一篇css公司工資