SQLite 3 杂记
1、如何得到最后插入项的自动增长ID值? 对应的C#代码段如下:
using (SQLiteConnection cn = new SQLiteConnection (“data source = Test.db”))
{
cn.Open ();
SQLiteCommand cmd = new SQLiteCommand ("INSERT INTO TestTable VALUES (NULL, ‘TestString’); SELECT last_insert_rowid ()", cn);
int NewID = Convert.ToInt32 (cmd.ExecuteScalar ());
cn.Close ();
}
NewID值为0表示插入未成功。 2、如何将查询结果直接保存到表? 保存到表之前,首先将表清空。对应的C#代码段如下:
using (SQLiteConnection cn = new SQLiteConnection (“data source = Test.db”))
{
cn.Open ();
SQLiteCommand cmd = new SQLiteCommand ("DELETE from TestTable; INSERT INTO TestTable SELECT ID, Name from TestTable", cn);
cmd.ExecuteNonQuery ();
cn.Close ();
}
相关文档:
这段时间在做CMS(客户管理系统,不是内容管理)的访问管理功能,要求实现对服务提供设备,客户端,计费,权限认证等信息的存储统计,远程管理。要求系统发布要方便,远程管理软件要跑在WIN平台。考虑到系统规模,客户要求,最后选择了WIN+ACCESS的方案,而最近又发现一个免费的SQLITE,而且可能在以后的手持设备上用,花点 ......
1、.back ?DB? FILE 备份DB(默认为main)到文件
2、.bail ON|OFF 遇到一个错误扣停止,该值默认为OFF
3、.databases 列举附加到数据库的数据库名和文件名
4、.dump ?TABLE? ... 用SQL文本格式列举数据库,如果指定TABLE,仅仅列举匹配的表,LIKE类型TABLE
5、.echo ON|OFF 设置echo的状态 ......
SQLite数据库的体系结构(翻译自sqlite.org)
1 简介
本文档描述了SQLite库的体系结构,这些信息对那些想理解和修改SQLite的内部工作机制的人是有用的。
本文档描述SQLite 3.0版本,2.8版或更早期的版本与此相似,只是细节上有所不同。
2 接口
......
Sqlite3.3.8移植
1、下载sqlite-3.3.8.tar.gz源码包,解压tar –zxvf sqlite-3.3.8.tar.gz
2、Cd sqlite-3.3.8
3、手动修改makefile 文件,目录下有一个makefile案例文件: Makefile.linux-gcc
4、重命名一个Makefile文件,cp Makefile.linux-gcc Makefile
5、 打开Makefile文件:vi Makefile
6、&nb ......