博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# SQLite编程总结
阅读量:6354 次
发布时间:2019-06-22

本文共 1570 字,大约阅读时间需要 5 分钟。

1.如果自己手动创建了数据库和字段,则不需要再创建table,基本流程:

1)SQLiteConnectionStringBuilder sb = new SQLiteConnectionStringBuilder();

            sb.DataSource = @"AA.db";//数据库名字

            var conStr = sb.ToString();

2)using (var con = new SQLiteConnection(conStr)){……}这句话代表跟数据库建立连接

3)在上面建立的连接con中执行命令或事物

using (var cmd = new SQLiteCommand(cmdFormat1, con)){……}// cmdFormat1为command的string SQL语句;

command可以执行Insert、Select、Read等操作;向表格中插入数值除了固定的SQL Insert语句插入方法以外,还可以通过Parameters实现。

const string cmdFormat1 = "INSERT INTO PERSON VALUES(@ID,@NAME,@AGE)";//不规定具体的数值

cmd1.Parameters.Add(new SQLiteParameter("ID", 2));//分别对每个字段赋值

cmd1.Parameters.Add(new SQLiteParameter("NAME","Betty"));

cmd1.Parameters.Add(new SQLiteParameter("AGE", 24));

有时,需要将取得的数据输出,则再cmd中执行:

var reader=cmd1.ExecuteReader();

while (reader.Read())

{

   int age = reader.GetInt16(0);//读到的第0列数据,同理,可以读取其他列数据

   Console.WriteLine(age);

   Console.ReadKey();

}

事务的代码:

using (var trans = con.BeginTransaction())

{

……(在此可以执行各种command等)

Trans.Commit();

}

在对数据库进行操作时,有时可能在执行SQL代码时出现错误,对数据库进行误操作,为了避免这种情况的出现,可用事务先提交,Trans.Commit()始终带try……catch……,当提交出现错误时在catch中进行rollback操作,代码如下

try

{

trans.Commit();

}

catch (System.Exception ex)

{

Console.WriteLine("Commit's exception:{0}",ex.ToString());

try

{

trans.Rollback();

}

catch (System.Exception ex1)

{

Console.WriteLine("Rollback's exception:{0}",ex1.ToString());

}

}

 

4)在程序中自己创建表格,

const string cmdFormat = "CREATE TABLE PERSON(ID INT,NAME STRING,AGE INT);";

执行该命令,如果该table已经建立了,在command中执行上面的那句话就会出错,为了避免该问题,在command中执行该命令时,加个try……catch……,这样,即使table已经建立,程序可以继续往下执行;

转载于:https://www.cnblogs.com/SherryWang/p/3548162.html

你可能感兴趣的文章
bootstrap随笔点击增加
查看>>
oracle 中proc和oci操作对缓存不同处理
查看>>
[LeetCode] Spiral Matrix 解题报告
查看>>
60906磁悬浮动力系统应用研究与模型搭建
查看>>
指纹获取 Fingerprint2
查看>>
面试题目3:智能指针
查看>>
flask ORM: Flask-SQLAlchemy【单表】增删改查
查看>>
vim 常用指令
查看>>
nodejs 获取自己的ip
查看>>
Nest.js 处理错误
查看>>
你好,C++(16)用表达式表达我们的设计意图——4.1 用操作符对数据进行运算...
查看>>
18.3 redis 的安装
查看>>
jdbc 简单连接
查看>>
Activiti 实战篇 小试牛刀
查看>>
java中的Static class
查看>>
[工具类]视频音频格式转换
查看>>
GNS3与抓包工具Wireshark的关联
查看>>
groovy-语句
查看>>
Java VisualVM远程监控JVM
查看>>
nasm预处理器(2)
查看>>