使用SQLite数据库开发数据库应用
一、关于SQLite SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中(如Android),可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、C#、PHP、Jav
一、关于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();
}
}
更多推荐
所有评论(0)