、通过Add References引用SQLite ADO .NET安装目录的bin目录下的System.Data.SQLite.DLL。
2、创建数据库文件:因为始终是个0字节文件,应该利用IO也可以(?!)。
System.Data.SQLite.SQLiteConnection.CreateFile(datasource);
3、连接数据库
System.Data.SQLite.SQLiteConnection conn = new System.Data.SQLite.SQLiteConnection(connectionString);
connectionString中包含了数据库的一些配置信息,比如数据库文件,数据库打开的密码等,可以利用System.Data.SQLite.SQLiteConnectionStringBuilder来辅助创建connectionString
4、创建表、读取数据等和Access或MS SQL没多大区别了。
// 创建一个数据库文件
string datasource = " h:/test.db " ;
System.Data.SQLite.SQLiteConnection.CreateFile(datasource);
// 连接数据库
System.Data.SQLite.SQLiteConnection conn =
new System.Data.SQLite.SQLiteConnection();
System.Data.SQLite.SQLiteConnectionStringBuilder connstr =
new System.Data.SQLite.SQLiteConnectionStringBuilder();
connstr.DataSource = datasource;
connstr.Password = " admin " ; // 设置密码,SQLite ADO.NET实现了数据库密码保护
conn.ConnectionString = connstr.ToString();
conn.Open();
// 创建表
System.Data.SQLite.SQLiteCommand cmd = new System.Data.SQLite.SQLiteCommand();
string sql = " CREATE TABLE test(username varchar(20),password varchar(20)) " ;
cmd.CommandText = sql;
cmd.Connection = conn;
cmd.ExecuteNonQuery();
// 插入数据
sql = " INSERT INTO test VALUES(’dotnetthink’,'mypassword’) " ;
cmd.CommandText = sql;
cmd.ExecuteNonQuery();
// 取出数据
sql = " SELECT * FROM test " ;
cmd.CommandText = sql;
System.Data.SQLite.SQLiteDataReader reader = cmd.ExecuteReader();
StringBuilder sb = new StringBuilder();
while (reader.Read())
{
sb.Append("username:").Append(reader.GetString(0)).Append("\n")
.Append("password:").Append(reader.GetString(1));
}
MessageBox.Show(sb.ToString());