【DB】SQLite学习笔记

下载”System.Data.SQLite.DLL”,程序中添加引用即可

//创建数据库文件
SQLiteConnection.CreateFile("sqlitetest.db");
//建立数据库连接并打开数据库
第一种方法: 
SQLiteConnection conn = new SQLiteConnection();
SQLiteConnectionStringBuilder connsb = new SQLiteConnectionStringBuilder();
connsb.DataSource = dbName;
connsb.Password = "zlm";
conn.ConnectionString = connsb.ToString();
conn.Open();
第二种方法: 
SQLiteConnection conn = new SQLiteConnection("Data Source=sqlitetest.db;Password=zlm");
conn.Open();
//添加表
SQLiteCommand cmd = new SQLiteCommand(conn);
string cmdText = "Create Table User(id int ,Name varchar(20))";
cmd.CommandText = cmdText;
cmd.ExecuteNonQuery();
//插入测试数据
第一方法:
SQLiteCommand cmd = new SQLiteCommand(conn);
cmd.CommandText = "INSERT INTO [TEST] (ID,name) VALUES (1,'acen')";
cmd.ExecuteNonQuery();
cmd.CommandText = "INSERT INTO [TEST] (ID,name) VALUES (2,'unique')";
cmd.ExecuteNonQuery();
第二种方法:
SQLiteCommand cmd = new SQLiteCommand(conn);
cmd.CommandText = "insert into User(id,name,econfig) values(@id,@name)";
cmd.Parameters.AddWithValue("@id", 3);
cmd.Parameters.AddWithValue("@name","zhangsan");
cmd.ExecuteNonQuery();    
//读数据
cmd.CommandText = "select * from Test";
SQLiteDataReader dr = cmd.ExecuteReader();
StringBuilder sb = new StringBuilder();
while (dr.Read())
{
    sb.Append(dr.GetInt32(0)).Append("|").Append(dr.GetString(1)).Append("\n");
}

1. 测试通过,如果把密码去掉再调试,”File opened that is not a database file .file is encrypted or is not a database”,不出所料,出错了。

2. 设置密码的另一个方法:conn.SetPassword("zlm"); 在打开连接之前设置。

3. 修改密码的方法:conn.ChangePassword("dy");必须在打开连接之后操作。

4. SQLite不支持存储过程,虽然它的类SQLiteCommand有一个CommandType属性,但其明确写着目前仅支持CommandType.Text.

posted @ 2013-11-21 18:02  `一群小猪.  阅读(256)  评论(0编辑  收藏  举报