亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

PHP中執(zhí)行MYSQL事務解決數(shù)據(jù)寫入不完整等情況

 更新時間:2014年01月07日 17:00:32   作者:  
事務可以進行模擬SQL操作,當所有的SQL都操作成功的時候才進行SQL操作,只要有一個操作失敗就回滾當前事務的所有SQL操作,避免出現(xiàn)上面描述中出現(xiàn)的數(shù)據(jù)寫入不完整等情況
近來稍有時間研究了下MYSQL中的事務操作,在很多場合下很是適用,譬如在注冊的時候需要初始化很多張關聯(lián)表的時候,問答回復的時候需要至少同時操作兩張表,這些都會在某些時候只能成功更新一張表,而另外的SQL語句出現(xiàn)錯誤,正常的操作會導致初始化了一張表 ,其他的都木有能初始化,這個時候就會導致用戶表里的用戶信息已經(jīng)執(zhí)行插入,導致提示注冊失敗,但是用戶已經(jīng)注冊了部分信息,這個時候需要程序員去數(shù)據(jù)庫刪除相應的數(shù)據(jù)是一個比較不好的事情。

因此這邊考慮使用事務,事務可以進行模擬SQL操作,當所有的SQL都操作成功的時候才進行SQL操作,只要有一個操作失敗就回滾當前事務的所有SQL操作,避免出現(xiàn)上面描述中出現(xiàn)的數(shù)據(jù)寫入不完整等情況。

下面是鄙人寫的一小段代碼,歡迎大家參考和提出意見:
復制代碼 代碼如下:

/**
* @todo 多條sql的事務處理
* @param $sqls array
* @return boole true/false
*/
public function doArraySqlActionsTran($password,$sqls){
$db = $this -> doSqlLink($password);//打開數(shù)據(jù)庫鏈接
$db -> autocommit(FALSE);//設置為不自動提交,因為MYSQL默認立即執(zhí)行
//獲取SQL執(zhí)行結(jié)果數(shù)組
for ($i=0;$i<count($sqls);$i++){
$result[$i] = $db -> query($sqls[$i]);
}
//解析SQL執(zhí)行結(jié)果數(shù)組
for ($j=0;$j<count($result);$j++){
if ($result[$j]==FALSE){
$result[$j]='false';
}else{
$result[$j]='true';
}
}
//查找SQL結(jié)果數(shù)組中是否存在false結(jié)果集
if (in_array('false',$result)){
$sqlResult=FALSE;
}else{
$sqlResult==TRUE;
}
//根據(jù)結(jié)果集進行數(shù)據(jù)庫回滾或者執(zhí)行操作
if ($sqlResult==FALSE){
$db -> rollback();//判斷當執(zhí)行失敗時回滾
$return=FALSE;// 正式環(huán)境中使用
//$return='ROOLBACK';//test 標記使用
}else{
$db -> commit();//執(zhí)行事務s
$return=TRUE;// 正式環(huán)境中使用
//$return='COMMIT';//test 標記使用
}
$db->autocommit(true); //設置為非自動提交——事務處理
$db->close();//關閉連接
return $return;
}

到此事務執(zhí)行批量SQL操作基本完成,謝謝大家!

相關文章

  • PHP調(diào)用JAVA的WebService簡單實例

    PHP調(diào)用JAVA的WebService簡單實例

    本篇文章主要是對PHP調(diào)用JAVA的WebService簡單實例進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2014-03-03
  • PHP下載遠程圖片的幾種方法總結(jié)

    PHP下載遠程圖片的幾種方法總結(jié)

    這篇文章主要介紹了PHP下載遠程圖片的幾種方法總結(jié)的相關資料,需要的朋友可以參考下
    2017-04-04
  • Gregarius中文日期格式問題解決辦法

    Gregarius中文日期格式問題解決辦法

    Gregarius支持中文的程度很不錯,唯一的缺陷就是在日期格式上會出現(xiàn)亂碼。其實只要修改根目錄下util.php文件的rss_locale_date方法就可以解決這個問題,希望可以幫助使用Gregarius的朋友,修改后的方法代碼如下:
    2008-04-04
  • 詳解PHP原生DOM對象操作XML的方法

    詳解PHP原生DOM對象操作XML的方法

    大家都知道對于操作XML類型文件,PHP內(nèi)置有一套DOM對象可以進行處理。對XML的操作,從創(chuàng)建、添加到修改、刪除都可以使用DOM對象中的函數(shù)來進行。下面這篇文章通過示例代碼給大家介紹如何進行操作,有需要的朋友們可以參考借鑒,下面來一起看看吧。
    2016-10-10
  • AJAX的使用方法詳解

    AJAX的使用方法詳解

    本篇文章主要介紹了AJAX的使用的相關知識。具有很好的參考價值。下面跟著小編一起來看下吧
    2017-04-04
  • php如何利用ffmpeg獲取視頻第一幀為縮略圖

    php如何利用ffmpeg獲取視頻第一幀為縮略圖

    用PHP生成視頻的縮略圖,在網(wǎng)上比較一致的方法就是通過ffmpeg來做的,下面這篇文章主要給大家介紹了關于php如何利用ffmpeg獲取視頻第一幀為縮略圖的相關資料,需要的朋友可以參考下
    2022-03-03
  • 15種PHP Encoder的比較

    15種PHP Encoder的比較

    15種PHP Encoder的比較...
    2007-03-03
  • php的SimpleXML方法讀寫XML接口文件實例解析

    php的SimpleXML方法讀寫XML接口文件實例解析

    在php5中讀寫xml文檔是非常方便的,可以直接使用php的SimpleXML方法來快速解析與生成xml格式的文件,本文實例說明如下,需要的朋友可以參考下
    2014-06-06
  • PHP中$_SERVER使用說明

    PHP中$_SERVER使用說明

    這篇文章主要介紹了PHP中$_SERVER使用說明的相關資料,需要的朋友可以參考下
    2015-07-07
  • PHP有序表查找之二分查找(折半查找)算法示例

    PHP有序表查找之二分查找(折半查找)算法示例

    這篇文章主要介紹了PHP有序表查找之二分查找(折半查找)算法,簡單介紹了二分查找法的概念、原理并結(jié)合實例形式分析了php基于二分查找算法進行有序線性表查找的相關操作技巧,需要的朋友可以參考下
    2018-02-02

最新評論