程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> c語言mysql數據庫事務開始、提交、回滾范例

c語言mysql數據庫事務開始、提交、回滾范例

編輯:MySQL綜合教程

c語言mysql數據庫事務開始、提交、回滾范例


1、 事務提交模式修改:修改數據庫提交模式為0[手動提交]

memset ( sql, 0x00, sizeof( sql ) );

memcpy ( sql, "set autocommit=0;", 17 );

if( mysql_query( sock, sql ) ){

sprintf( g_acTrcMsg, "關閉自動提交模式失敗[%d][%s]", mysql_errno( sock ), mysql_error( sock ) );TRCLOG1

return -1;

}

 

2、 事務開始

memset ( sql, 0x00, sizeof( sql ) );

memcpy ( sql, "start transaction;", 18 );

if( mysql_query( sock, sql ) ){

sprintf( g_acTrcMsg, "建立事務失敗[%d][%s]", mysql_errno( sock ), mysql_error( sock ) );TRCLOG1

return -1;

}

 

3、 事務回滾

memset ( sql, 0x00, sizeof( sql ) );

memcpy ( sql, "rollback;", 9 );

if( mysql_query( sock, sql ) ){

sprintf( g_acTrcMsg, "事務回滾失敗[%d][%s]", mysql_errno( sock ), mysql_error( sock ) );TRCLOG1

return -1;

}

 

 

4、 事務提交

memset ( sql, 0x00, sizeof( sql ) );

memcpy ( sql, "commit;", 7 );

if( mysql_query( sock, sql ) ){

sprintf( g_acTrcMsg, "提交事務失敗[%d][%s]\n", mysql_errno( sock ), mysql_error( sock ) );TRCLOG1

return -1;

}

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved