2010-04-06 09:59 Sqlite在C#中的应用
在 .NET 里面使用 SQLite, 我这里使用的wrapper是 System.Data.SQLite,它只需要一个dll,接口符合ADO.Net 2.0的定义,性能也不错,NHibernate用的也是它,目前支持ADO.NET 3.5了,支持集成在 VS2005 和 VS2008里面,而且支持wince,是个亮点 因为符合ADO.NET的规范,所以使用方式,基本和 SqlClient,OleDb等原生的一致 using System.Data; using (SQLiteConnection cn = new SQLiteConnection( //Pooling设置为true时,SQL连接将从连接池获得,如果没有则新建并添加到连接池中,默认是true。
using (SQLiteCommand cmd = new SQLiteCommand()) //建立表,如果表已经存在,则报错 //插入测试数据 for (int i = 5; i < 10; i++) //读取数据 在C#中使用SQLite
2、创建数据库文件:因为始终是个0字节文件,应该利用IO也可以(?!)。 System.Data.SQLite.SQLiteConnection.CreateFile(datasource); System.Data.SQLite.SQLiteConnection conn = new System.Data.SQLite.SQLiteConnection(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('ekinglong','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()); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |