您的位置:首页 > 数据库

【数据库】SQLITE3 使用总结5

2009-05-16 13:47 459 查看

(4) 事务处理

sqlite 是支持事务处理的。如果你知道你要同步删除很多数据,不仿把它们做成一个统一的事务。# p4 T' j s+ ~$ K: r

1 n4 K: `' f* u: u! t通常一次 sqlite3_exec 就是一次事务,如果你要删除1万条数据,sqlite就做了1万次:开始新事务->删除一条数据->提交事务->开始新事务->… 的过程。这个操作是很慢的。因为时间都花在了开始事务、提交事务上。( N' a- [* y- d/ ~' n! O

8 g' V. o" E0 Y u1 B- ~4 |你可以把这些同类操作做成一个事务,这样如果操作错误,还能够回滚事务。3 C, P9 ^3 m- w

b7 `( Y; ^+ `% Q6 |3 y/ N事务的操作没有特别的接口函数,它就是一个普通的 sql 语句而已:$ c+ @6 H- b" M* I; K* z

# |' @# \" B h# H5 ]1 R分别如下:
复制内容到剪贴板
代码:
int result;

result = sqlite3_exec( db, "begin transaction", 0, 0, &zErrorMsg ); //开始一个事务

result = sqlite3_exec( db, "commit transaction", 0, 0, &zErrorMsg ); //提交事务

result = sqlite3_exec( db, "rollback transaction", 0, 0, &zErrorMsg ); //回滚事务
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: