易截截图软件、单文件、免安装、纯绿色、仅160KB

SQLite启动事物

事务(DbTransaction):
SQLite 缺省为每个操作启动一个事务,所以成批插入的时候,启动事务,比不启动事务快n倍。
在没启动事务之前往Sqlite数据库里插入1000多条数据的情况,结果每次都需要一两分钟才能完成.
而在启动事物以后所需要的时间直接变成不到2秒!原来sqlite花两分钟是由于ExecuteNonQuery方法执行时自己提交了更新事务,默认执行更新操作是会自动提交事务的,也就是说默认情况下一条SQL语句就是一个事务,如果不明白可以去看事务的隔离级别。
更改后的代码把所有的更新SQL放在一个事务中,只有执行到Commit方法时才提交事务。
与数据库通信的内容两次完成的,但旧的方法进行了100000次通信,
而新方法只进行一次通信,时间的差别就出来了。。
public static void InsertManyData(DbConnection conn)
{
using (DbTransaction dbTrans = conn.BeginTransaction())
{
using (DbCommand cmd = conn.CreateCommand())
{
try
{
cmd.CommandText = "INSERT INTO Test(MyValue) VALUES(?)";
DbParameter Field1 = cmd.CreateParameter();
cmd.Parameters.Add(Field1);
for (int n = 0; n < 100000; n++)
{
Field1.Value = n + 100000;
cmd.ExecuteNonQuery();
}
dbTrans.Commit();
}
catch
{
dbTrans.RollBack();
}
}
}
}


相关文档:

sqlite查询数据库中存在的所有表

from within a C/C++ program (or a script using Tcl/Ruby/Perl/Python
bindings) you can get access to table and index names by doing a SELECT
on a special table named "SQLITE_MASTER
". Every SQLite database has an SQLITE_MASTER table that defines the schema for the database.
SQL code
S ......

SQLite用触发器来替代外键约束

SQLite用触发器来替代外键约束 CREATE TABLE [Category] (
  [Pkid] INTEGER  PRIMARY KEY AUTOINCREMENT NOT NULL,
  [CategoryName] NVARCHAR(32)  NOT NULL,
  [CategoryGuid] char(36)  UNIQUE NOT NULL,
  [CategoryDesc] nvarchar(256)  NULL
) C ......

sqlite 使用

我老婆工作要管理好多的excel表格比较的麻烦,于是想着帮忙写个软件让她方便点
其实我winform软件还没有写过呢,以前写的都是web的
因为写的软件就是她自己用用我想应该不需要用什么大的数据库的,所以我最先想到用access数据库挺方便的文件复制就可以了
可是我没有office access啊,不过我记得电脑上好像有access数据库 ......

用vs2008编译出sqlite dll和lib (图解)

1:从sqlite的官网上下载源码 http://www.sqlite.org/download.html
2:打开vs2008工程新建一个空的dll工程。
3:把sqlite3.h,sqlite3.cpp,sqlite3.def分别加入到head file 和source file下。
4:编译程序。 这时只能得到sqlite3.dll文件。
5:打开vs2008自带的命令行: 切到sqlite3.def所在的目录。
 
6:运行 ......

Android(三)数据存储之三SQLite嵌入式数据库

前两篇日志我已经总结了本地数据存储的前两种:文件和配置项。还剩下最后一种数据库存储——SQLite。
一、SQLite简介
在Android平台上,集成了一个嵌入式关系型数据库—SQLite,SQLite3支持 NULL、INTEGER、REAL(浮点数字)、TEXT(字符串文本)和BLOB(二进制对象)数据类型,虽然它支持的类型虽然只有五种 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号