C#连接Sqlite
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文件你可以根据你的操作系统版本选择合适的安装版本,安装完成之后的文件路径为C:/Program Files/System.Data.SQLite/2008/bin。添加了上面所说的两个引用之后,为方便调用,写了一个SqlHelper类:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data;using System.Data.SQLite;namespace ConsoleSqlite{ public class DBHelper { public SQLiteConnection GetCon() { string strFilePath = @"Data Source=C:/test.db"; string strCon = strFilePath + ";Pooling=true;FailIfMissing=false"; SQLiteConnection sqliteCon = new SQLiteConnection(strCon); return sqliteCon; } } public class SqlHelper : DBHelper { private DataTable dt; private SQLiteConnection conn; private SQLiteCommand cmd; private SQLiteDataAdapter sda; /// <summary> /// 数据库操作类 /// </summary> /// <param name="sql"></param> /// <returns></returns> public int RunSQL(string sql) { int count = 0; try { conn = GetCon(); conn.Open(); cmd = new SQLiteCommand(sql, conn); cmd.ExecuteNonQuery(); count = count + 1; } catch (Exception) { throw; } finally { conn.Close(); } return count; } /// <summary> /// 获得datatable /// </summary> /// <param name="sql"></param> /// <returns></returns> public DataTable GetDataTable(string sql) { DataSet ds = null; try { conn = GetCon(); sda = new SQLiteDataAdapter(sql, conn);//OracleDataAdapter:网络适配器 ds = new DataSet(); sda.Fill(ds);//将结果填充到ds中 dt = ds.Tables[0]; } catch (Exception) { throw; } finally { conn.Close(); } return dt; } /// <summary> /// 返回记录总条数 /// </summary> /// <param name="strTableName"></param> /// <returns></returns> public int GetCount(string strTableName) { string strSql = "select count(*) from " + strTableName; int count = 0; DataTable dtCount = GetDataTable(strSql); count = int.Parse(dtCount.Rows[0][0].ToString()); return count; } }}
上面的类中,包含了基本的操作,一般人是够用了,为了测试我的类建立的是否正确,我新建了一个控制台程序,代码如下:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data;namespace ConsoleSqlite{ class Program { static void Main(string[] args) { SqlHelper helper = new SqlHelper(); string strSql = "Select * From county"; DataTable dt = helper.GetDataTable(strSql); Console.WriteLine("Hello"); } }}
在中间设置断点进行调试,发现是对的,大功告成!
>更多相关文章
- 10-26Whitewidow SQL漏洞扫描工具演示
- 10-26SQL黑客注入防御与绕过的多种姿势
- 12-23SQLServer数据库操作总结(sql语法的使用)
- 12-21C#连接Sqlite
- 12-21ORACLE数据库学习之SQL性能优化详解
- 12-21解决SQLSERVER2008数据库日志文件占用硬盘空间问题
首页推荐
佛山市东联科技有限公司一直秉承“一切以用户价值为依归
- 01-11全球最受赞誉公司揭晓:苹果连续九年第一
- 12-09罗伯特·莫里斯:让黑客真正变黑
- 12-09谁闯入了中国网络?揭秘美国绝密黑客小组TA
- 12-09警示:iOS6 惊现“闪退”BUG
- 12-05亚马逊推出新一代基础模型 任意模态生成大模
- 12-05OpenAI拓展欧洲业务 将在苏黎世设立办公室
- 12-05微软质疑美国联邦贸易委员会泄露信息 督促其
- 12-05联交所取消宝宝树上市地位 宝宝树:不会对公
- 12-04企业微信致歉:文档打开异常已完成修复
相关文章
24小时热门资讯
24小时回复排行
热门推荐
最新资讯
操作系统
黑客防御