標籤:資料庫 事務 mysql c語言
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;
}
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
c語言mysql資料庫事務開始、提交、復原範例