2、在C#中连接Sqlite

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: 小  |  中  |  大  |  超大  

1、Slite简介SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、php、java等,还有ODBC接口,同样比起MySQL、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。SQLite第一个Alpha版本诞生于2000年5月。 至今已经有13个年头,SQLite也迎来了一个版本 SQLite 3已经发布。

2、在C#中连接Sqlite连接Sqlite首先需要添加System.Data.SQLite.dll和System.Data.SQLite.Linq.dll的引用,这两个dll文件你可以根据你的操作系统版本选择合适的安装版本,对于这两个dll网上有的说放在system32或者指定目录下,然后注册,但是我按照那种做法就会出现“模块 ***.dll 已加载,但找不到入口点DllRegisterSever”这个问题,我也尝试着按网上的方法去解决,但是最后还是没有解决,尼玛,我果断不管它,直接在项目里面引用这两个dll文件。

代码:1 using System;

2 using System.Collections.Generic;

3 using System.ComponentModel;

4 using System.Data;

5 using System.Drawing;

6 using System.Text;

7 using System.Windows.Forms;

8 using System.Data.SQLite ;

9

10 namespace Connect

11 {

12 public partial class Form1 : Form

13 {

14 public static SQLiteConnection sqlConn;

15 public static string ConnectionString = "Data Source=E:/instance;Pooling=true;Integrated Security=True";//存储公用的数据库连接字符串

16

17

18 //打开数据库连接

19 public static SQLiteConnection StartSQLConn()

20 {

21 sqlConn = new SQLiteConnection(ConnectionString);

22 try

23 {

24 sqlConn.Open();

25 }

26 catch

27 {

28 sqlConn = null;

29 }

30 return sqlConn;

31 }

32 public static bool GetSQLCmd(string SQLstr)

33 {

34 bool flag = false;

35 StartSQLConn();

36 if (sqlConn != null)

37 {

38 SQLiteCommand SQLcmd = new SQLiteCommand(SQLstr, sqlConn);

39 try

40 {

41 if (SQLcmd.ExecuteNonQuery() > 0)//执行SQL语句

42 flag = true;

43 }

44 catch

45 { }

46 sqlConn.Close();

47 }

48 return flag;

49 }

50 public Form1()

51 {

52 InitializeComponent();

53 }

54

55PRivate void button1_Click(object sender, EventArgs e)

56 {

57 GetSQLCmd("insert into circuit(instance,user,coordinate,path,time)values('sun','qin','xin','hao','2014-04-23 14:55:10')");

60 }

61 }

62 }

本以为一切都OK,谁知运行后弹出错误“混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集。”,对于这个问题,网上有说在app.config 中的configuration 节点中添加以下设置:

<startup useLegacyV2RuntimeActivationPolicy="true">

<supportedRuntime version="v4.0"/>

</startup>

我觉得实在不愿再折腾,就直接关掉VS2010,用VS2008进行编译,谁知,一切OK。

以上是我首次使用C#连接SQLite,也是首次使用SQLite遇到的一些问题,不喜勿喷哦!

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航