SQLite (C#)做一个方便产生SQL语句的Helper类

目录

概述

字段集合类

操作类


概述

SQLite作为一个轻量级的数据库,再很大程度上可以满足单机数据文件的记录功能。

为了满足本人懒惰的性格,就研究了一下可以根据所给的字段,自动管理一些SQL语句的Helper 类。

如下图为类的树状显示:

其中包含了字段类【SQTableField】、字段集合类【SQTableFieldCollect】、

SQLite基础类【SQLiteBase】、SQLite操作类【SQLiteOperate】

还有SQLite 的运算符枚举类 和 数据类型枚举类。

字段集合类

在字段集合类【SQTableFieldCollect】中包含了 转换为创建字段命令【ToCreateCmd()】、

转换为插入数据命令【ToInsertCmd()】、转换为更新命令【ToUpdateCmd()】

这么做的好处就是,使用的时候,只需要建立一个 

new SQTableField();

然后 add 到【SQTableFieldCollect】中,剩下 命令的生成就由这几个转换方法帮助我们解决了。

减少了我们花费时间做Data、写命令string 的麻烦。

操作类

在操作类里包含了SQLite 一些基本的操作,如增删改、创建表、删除表、查询等等。

【该Helper将会持续更新】

附一个简单的使用示例:

添加引用

using SQLiteHelper;

初始化SQLite操作类

string FolderPath = @"C:\";
string DataBaseName = "MyDb.db";
SQLiteOperate sOperate = new SQLiteOperate(FolderPath,DataBaseName);

在创建操作类的时候,会自动根据文件夹路径,检查是否存在指定DataBaseName的数据库文件,如果不存在将会新建一个指定名字的数据库文件。之后,这个sOperate对象连接的就是这个数据库。

如果需要操作其他的数据库文件,只需要new 一个新的SQLiteOperate 即可。

 新建字段集合

SQTableFieldCollect sQTableFields = new SQTableFieldCollect();

向字段集合内添加字段

sQTableFields.Add(new SQTableField()
{
    fName = "ID",
    dType = SQDataType.INTEGER,
    pKeyEnable = true,
});
sQTableFields.Add(new SQTableField()
{
    fName = "日期时间",
    dType = SQDataType.DATETIME,
});
for (int k = 0; k < 10; k++)
{
sQTableFields.Add(new SQTableField()
{
    fName = string.Format("数据{0}", k),
    dType = SQDataType.TEXT,
    dLength = 20,
});

根据所建立的字段集合 创建新表 ,如果存在指定Tablename 的表则会立即返回

if (sQTableFields.Count <= 0)
    return;
string tablename = "Table1";
//创建新表,如果存在指定Tablename 的表则会立即返回
sOperate.CreateNewTable(tablename, sQTableFields);

根据所建立的字段集合,发现包含新的字段 向指定表内添加新的字段

foreach (SQTableField fieldName in sQTableFields)
{
     sOperate.AddField(tablename, fieldName);
}

字段类中有一个Value,通过这个属性可以添加值,之后插入数据表中

sQTableFields[1].Value = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
for (int k = 2; k < 12; k++)
{
    sQTableFields[k].Value = k;
}
if (sQTableFields.Count <= 0)
    return;
string tablename = "Table1";
sOperate.Insert(tablename, sQTableFields);

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值