一、关于sqlite
sqlite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中(如Android),可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起MysqL、Postgresql这两款开源世界著名的来讲,它的处理速度比他们都快。sqlite第一个Alpha版本诞生于2000年5月。 至今已经有13个年头,sqlite也迎来了一个版本 sqlite 3已经发布。sqlite是一个由C语言写成的开源项目,零配置无需安装即可使用,支持2TB的数据库大小,代码简洁、实用、独立。官方网站为http://www.sqlite.org,您可以在这里找到该项目的源代码和文档。
二、使用sqlite
以C#为例,要使用sqlite,我们首先需要在项目中添加对System.Data.sqlite.dll的引用,该类库可以从这里下载下载。经典的ADO.Net模式走起!
class sqlite { private string DataSource = "D:\\Students.db3"; private sqliteConnection Connection=new sqliteConnection(); private sqliteCommand Command=new sqliteCommand(); public void Main() { //创建数据库 sqliteConnection.CreateFile(DataSource); //连接数据库 Connection.ConnectionString = "Data Source=" + DataSource; Connection.Open(); //创建数据表 Command.CommandText = "CREATE TABLE Student(Name varchar(20),Age varchar(10),Sex varchar(20))"; Command.Connection = Connection; Command.ExecuteNonQuery(); //插入数据 Command.CommandText = "INSERT INTO Student VALUES('张三','20','男')";//这是一种形式 Command.ExecuteNonQuery(); Command.CommandText = "INSERT INTO Student(Name,Age,Sex) VALUES(@Name,@Age,@Sex)";//这是另一种形式,配合下面的语句,形式更加优美 sqliteParameter[] Parameter = new sqliteParameter[] { new sqliteParameter("@Name","张三"),new sqliteParameter("@Age","20"),new sqliteParameter("@Sex","男") }; Command.Parameters.AddRange(Parameter); Command.ExecuteNonQuery(); //读取数据 StringBuilder S = new StringBuilder(); Connection.Open(); Command.Connection = Connection; Command.CommandText = "SECLECT * FROM Student"; sqliteDataReader Reader = Command.ExecuteReader(); while (Reader.Read()) { S.Append( "[Name=" + Reader.GetValue(0).ToString() + "," + "Age=" + Reader.GetValue(1).ToString() +"," +"Sex="+Reader.GetValue(2).ToString()+ "]"); Console.WriteLine(S.ToString()); S.Remove(0,S.Length); } Reader.Close(); Reader.Dispose(); Connection.Close(); } }原文链接:https://www.f2er.com/sqlite/200953.html