PHP使用Mysql事務例項解析

2021-06-25 16:40:50 字數 954 閱讀 1904

<?php

//資料庫連線

$conn = mysql_connect('localhost', 'root', '');

mysql_select_db('test', $conn);

mysql_query("set names gbk"); /*

支援事務的表必須是innodb型別

一段事務中只能出現一次:

mysql_query('start transaction');//開始事務

mysql_query(' rollback ');//回滾事務

mysql_query('commit');//提交事務

如果一段事務中出現多次回滾事務,則在,提交事務時只將第一次回滾前至開始事務後對資料庫的所有操作取消,第一次回滾後至提交事務前所有對資料庫操作仍將有效,所以一般將回滾語句僅放在提交事務語句前

如果一段事務無提交語句,則從開始事務時以下的所有對資料庫操作雖執行(執行方法返回對錯),但對資料庫無影響,但是在執行下段開始事務語句時,前段事務自動提交

*/mysql_query('start transaction');

$isbad = 0;

$ins_testtable1 = "insert into testtable1(name,age)values('first',23)";

if(!mysql_query($ins_testtable1))

//插入語句欄位名有錯

$ins_testtable2 = "insert into testtable1(name,ages)values('second','24')";

if(!mysql_query($ins_testtable2))

if($isbad == 1)

mysql_query('commit');

mysql_close($conn);

?>

PHP操作MySQL事務例項

一般來說,事務都應該具備acid特徵。所謂acid是atomic 原子性 consistent 一致性 isolated 隔離性 durable 持續性 四個詞的首字母所寫,下面以 銀行轉帳 為例來分別說明一下它們的含義 原子性 組成事務處理的語句形成了乙個邏輯單元,不能只執行其中的一部分。換句話說...

PHP中使用事務例項

pdo和mysql的寫法不一樣,處理方式一樣 dbhost localhost 3306 mysql伺服器主機位址 dbuser root mysql使用者名稱 dbpass 123456 mysql使用者名稱密碼 conn mysqli connect dbhost,dbuser,dbpass i...

sql事務例項

下面是乙個簡單的事務的例項。是單位就餐補助查詢用的,主要是根據就餐的記錄判斷餐別,對不同的人增加補助,就是乙個運算而已 create procedure dbo addbzmoney as 確定就餐型別和補助金額 begin begin tran insert into sumbz 卡號,日期,餐別...