SQlite在c#中的应用

前端之家收集整理的这篇文章主要介绍了SQlite在c#中的应用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
  1. sqlite是目前比较流行的一个开源、免费的小型的EmbeddableRDBMS(关系型数据库),用C实现,内存占用较小,支持绝大数的sql92标准,个别不支持的情况,在这里说明
  2. 对各种语言的支持也比较不错,wrapper很多。
  3. GoogleGears、Mozilla和AdobeAIR都在使用sqlite,应该说明其还是很不错的
  4. sqlite的关键字列表,这里
  5. 支持sql语法,在这里
  6. --------------------------------------------------------------------------------
  7. 在.NET里面使用sqlite,我这里使用的wrapper是System.Data.sqlite,它只需要一个dll,接口符合ADO.Net2.0的定义,性能也不错,NHibernate用的也是它,目前支持ADO.NET3.5了,支持集成在VS2005和VS2008里面,而且支持wince,是个亮点
  8. 因为符合ADO.NET的规范,所以使用方式,基本和sqlClient,OleDb等原生的一致
  9. usingSystem.Data;
  10. usingSystem.Data.sqlite;
  11. //...
  12. using(sqliteConnectioncn=newsqliteConnection(
  13. "DataSource=Test.db3;Pooling=true;FailIfMissing=false")
  14. )
  15. {
  16. //在打开数据库时,会判断数据库是否存在,如果不存在,则在当前目录下创建一个
  17. cn.Open();
  18. using(sqliteCommandcmd=newsqliteCommand())
  19. {
  20. cmd.Connection=cn;
  21. //建立表,如果表已经存在,则报错
  22. cmd.CommandText="CREATETABLE[test](idint,namenvarchar(20))";
  23. cmd.ExecuteNonQuery();
  24. //插入测试数据
  25. for(inti=2;i<5;i++)
  26. {
  27. cmd.CommandText=string.Format("INSERTINTO[test]VALUES({0},'杜思波技术讨论区域')",i);
  28. cmd.ExecuteNonQuery();
  29. }
  30. for(inti=5;i<10;i++)
  31. {
  32. cmd.CommandText=string.Format("INSERTINTO[test]VALUES({0},'EnglishTest')",i);
  33. cmd.ExecuteNonQuery();
  34. }
  35. //读取数据
  36. cmd.CommandText="SELECT*FROM[test]";
  37. using(sqliteDataReaderdr=cmd.ExecuteReader(CommandBehavior.CloseConnection))
  38. {
  39. while(dr.Read())
  40. {
  41. Console.WriteLine("第{0}条:{1}",dr.GetValue(0),dr.GetString(1));
  42. }
  43. }
  44. }
  45. }

猜你在找的Sqlite相关文章