C#调用SQLite的方法实例分析

作者:聪明的笨蛋 时间:2022-09-25 06:02:22 

本文实例讲述了C#调用SQLite的方法。分享给大家供大家参考。具体分析如下:

一、SQLite简介:

当我们用到海量数据时一般会用Oracle,SQL Server,DB2,Sybase,MySQL等数据库来保存和管理数据.如果只是程序中需要保存少量数据的话直接整到注册表里,或者保存到一个XML文件中.那如果数据量刚好不多不少,用Oracle这样的数据库有点小题大作,没有必要.有个XML保存的话存取速度又比较慢.咋整呢?这时用SQLite这个小型的嵌入式数据库就是非常理想的选择.它用起来也很简单方便.

SQLite不需要像Oracle等数据库一样得安装,配置,然后又是啥服务器端客户端啥的.它很简单就直接一个小小的文件,以db为后缀的文件.大小就几十K.你不用干其他啥事,把它拷过来直接用就行.像操作一个普通的txt文件一样.不过觉得把它当作一个文件还是有点不妥.我们应该可以这样理解,它有点像库函数,或COM组件,dll.然后提供了一些接口给你调用..SQLite是开源的,你要下载它和查看它的C源代码可以去官方网站http://www.sqlite.org/

当然有人会问那如果我们不在某个程序中通过接口调用SQLite,而只像一般的数据库那样通过图形界面操作咋整啊? 你可以用一个叫SQLiteBrowser的工具,下载下来解压缩,不用安装,直接双击里面的exe文件打开一个图形界面.然后点击菜单File -->open database,找到那个db文件就行.然后在图形界面上可以查看表中数据,新建表啥的.不过SQLite是没有啥权限控制的,用户名密码都没,谁都能拿来打开.所以里面要是保存啥秘密信息的话最好先加密后再保存.

SQLite是用C语言开发的,所以用C和C++去调用是一点问题都没.不过用C#也能调用,只不过要用到一个dll,这里我就讲下怎么用C#调用SQLite.

二、C#调用SQLite

1.首先得去网上下载一个叫System.Data.SQLite.dll的文件

2.跟添加其他dll一样,先Add Reference添加此dll

3.添加命名空间using System.Data.SQLite

4.接下来就是写代码了


string connectString = @"Data Source=D:\SQLite.db;Pooling=true;FailIfMissing=false";    
/*D:\sqlite.db就是sqlite数据库所在的目录,
它的名字你可以随便改的*/
SQLiteConnection conn = new SQLiteConnection(connectString);
//新建一个连接
conn.Open();
//打开连接,如果sqlite.db存在就正常打开,
//如果不存在则创建一个SQLite.db文件
SQLiteCommand cmd = conn.CreateCommand();
cmd.CommandText = "select * from orders";
//数据库中要事先有个orders表
cmd.CommandType = CommandType.Text;
using (SQLiteDataReader reader = cmd.ExecuteReader())
{
 while (reader.Read())
   Console.WriteLine( reader[0].ToString());
}

用法其实跟平时用C#操作一般的数据库差不多.

另外如果要用到Linq的话得用到另外一个dll文件,System.Data.SQLite.Linq.dll

希望本文所述对大家的C#程序设计有所帮助。

标签:C#,SQLite
0
投稿

猜你喜欢

  • Java多线程之ThreadLocal浅析

    2023-06-19 19:55:37
  • Java 反射调用静态方法的简单实例

    2021-10-09 06:47:58
  • IDEA设置maven修改settings.xml配置文件无法加载仓库的解决方案

    2023-08-23 22:39:35
  • Java中try catch处理异常示例

    2023-11-07 00:43:17
  • Java 遍历取出Map集合key-value数据的4种方法

    2022-02-03 02:48:59
  • Java 网络编程socket编程等详解

    2023-09-09 16:43:12
  • SpringBoot绿叶显示yml和端口问题及解决方法

    2023-12-09 00:29:13
  • mybatis错误之in查询 <foreach>循环问题

    2023-11-17 01:10:09
  • 说说在Spring中如何引用外部属性文件的方法

    2023-09-18 21:47:25
  • Spring BeanDefinition使用介绍

    2023-11-24 10:29:10
  • Spring Boot自动配置的原理及@Conditional条件注解

    2021-08-31 21:14:11
  • java前后端加密解密crypto-js的实现

    2023-11-29 12:09:31
  • java,android,MD5加密算法的实现代码(16位,32位)

    2022-07-12 20:40:10
  • SpringMVC拦截器创建配置及执行顺序

    2023-06-06 20:41:16
  • Spring MVC请求参数的深入解析

    2021-11-26 22:55:25
  • 详解JAVA中priorityqueue的具体使用

    2022-05-17 22:53:50
  • Java中文件操作功能小结

    2023-06-20 03:32:28
  • spring缓存自定义resolver的方法

    2021-05-30 17:07:56
  • Java中clone方法使用笔记

    2023-03-26 07:44:38
  • C# 实现FTP客户端的小例子

    2022-06-09 13:19:13
  • asp之家 软件编程 m.aspxhome.com