- SQLite是目前比较流行的一个开源、免费的小型的EmbeddableRDBMS(关系型数据库),用C实现,内存占用较小,支持绝大数的SQL92标准,个别不支持的情况,在这里说明
- 对各种语言的支持也比较不错,wrapper很多。
- GoogleGears、Mozilla和AdobeAIR都在使用sqlite,应该说明其还是很不错的
- SQLite的关键字列表,这里
- 支持的sql语法,在这里
- --------------------------------------------------------------------------------
- 在.NET里面使用SQLite,我这里使用的wrapper是System.Data.SQLite,它只需要一个dll,接口符合ADO.Net2.0的定义,性能也不错,NHibernate用的也是它,目前支持ADO.NET3.5了,支持集成在VS2005和VS2008里面,而且支持wince,是个亮点
- 因为符合ADO.NET的规范,所以使用方式,基本和SqlClient,OleDb等原生的一致
- usingSystem.Data;
- usingSystem.Data.SQLite;
- using(SQLiteConnectioncn=newSQLiteConnection(
- "DataSource=Test.db3;Pooling=true;FailIfMissing=false")
- )
- {
- cn.Open();
- using(SQLiteCommandcmd=newSQLiteCommand())
- {
- cmd.Connection=cn;
- cmd.CommandText="CREATETABLE[test](idint,namenvarchar(20))";
- cmd.ExecuteNonQuery();
- for(inti=2;i<5;i++)
- {
- cmd.CommandText=string.Format("INSERTINTO[test]VALUES({0},'杜思波技术讨论区域')",i);
- cmd.ExecuteNonQuery();
- }
- for(inti=5;i<10;i++)
- {
- cmd.CommandText=string.Format("INSERTINTO[test]VALUES({0},'EnglishTest')",i);
- cmd.ExecuteNonQuery();
- }
- cmd.CommandText="SELECT*FROM[test]";
- using(SQLiteDataReaderdr=cmd.ExecuteReader(CommandBehavior.CloseConnection))
- {
- while(dr.Read())
- {
- Console.WriteLine("第{0}条:{1}",dr.GetValue(0),dr.GetString(1));
- }
- }
- }
- }
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|