C#利用System.Data.SQLite实现对SQLite的操作

SQLite介绍

SQLite是一个类似于Access的单机版数据库管理系统,它将所有数据库的定义(包括定义、表、索引和数据本身)都保存在一个单一的文件中。并且,SQLite是一个用C实现的类库,它在内存消耗、文件体积、简单性方面都有不错的表现,如果数据在10W条以下,查询速度也是相当快的。
SQLite具有以下特征:
实现多数SQL92的标准,包括事务(原子性、一致性、隔离性和持久性)、触发器和大多数的复杂查询。
不对插入或者更新的数据进行类型检查,你可以将字符串插入到整数列中(这个可能让有些用户不太适应)。
支持Windows/Linux/Unix等主流系统,还支持嵌入式系统如Android或Windows Mobile。

System.Data.SQLite的前期准备

1、System.Data.SQLite 库下载,用于C#操作SQLite的dll文件。下载地址:http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki
2、SQLite可视化工具下载,用于查看SQLite库数据表数据。下载地址:http://www.sqliteexpert.com/download.html

System.Data.SQLite通用类

可以分为以下几种情况:
1、创建数据库文件;
2、返回DataTable;
3、返回DataReader;
4、执行增删改,返回受影响的行数;
5、执行查询,返回第一行第一列(通常用于带有行函数的查询,如SUM/AVG/COUNT等);
6、返回库中所有的表;
因为在System.Data.SQLite中不存在存储过程,所以所有的操作都是基于文本的SQL语句,为了避免SQL注入,所以使用了参数化的SQL语句。

一、创建、删除SQLite数据库文件

为了增加格式的规范性,在项目的App.config文件的配置文本中添加数据库文件路径。
如下connectionStrings标签:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>
  <connectionStrings>
    <add name="itcastCater" connectionString="data source=C:\Users\**\**\itcastCater.db;version=3;"/>
  </connectionStrings>
</configuration>

运行方法 SQLiteConnection.open 就会创建个空的指定名字的数据库文件。

using System.Data.SQLite;
using System.Configuration;

 //从app.config配置文本中读取连接字符串,获取数据库文件的绝对路径“Data Sounce”
    private static string connStr = ConfigurationManager.ConnectionStrings["itcastCater"].ConnectionString;
    
static void Create()
{
    SQLiteConnection cn = new SQLiteConnection(connStr);
    //按照路径创建数据库文件
    cn.Open();
    cn.Close();
}
 

由于数据库是文件类型的,直接用System.IO.File.Delete(string path) 方法来删除文件。

//删除数据库
static void Delete()
{
    if (System.IO.File.Exists(connStr))
    {
        System.IO.File.Delete(connStr);
    }
}

二、创建、删除数据库表

创建表格要用到 SQL 命令。
建立一个表的顺序如下步骤(也可以用可视化工具 SQLiteExpert 来创建):
1、建立数据库连接;
2、打开数据库(如果没有数据库,Open 也会新创建一个数据库);
3、声明一个 SQLiteCommand 类,主要用来放置和运行 SQL 命令的;
4、把 SQLiteCommandConnectionSQLiteConnection 联系起来;
5、往 SQLiteCommandCommandText 输入 SQL 语句 CREATE TABLE 语句;
6、调用 SQLiteCommand.ExcuteNonQuery() 方法运行。

//创建数据库表
static void CreateTable()
{
    SQLiteConnection cn = new S
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值