C#操作SQLite数据库之读写数据库的方法

作者:zhenyongyuan123 时间:2024-01-27 21:46:33 

本文实例讲述了C#操作SQLite数据库之读写数据库的方法。分享给大家供大家参考,具体如下:

这里演示读写数据库并在窗体(Form)中显示其数据,其方式为:

读:

Database(SQLite) -> DataAdapter -> DataSet -> DataGridView

写:

Database(SQLite) <- DataAdapter <- DataSet <- DataGridView

1、假设现有数据库表student,其字段如下:

ID(自增字段,主键)

number

name

grade

1

20120001

jackey

1


2、DataGrideView控件和DataSet控件

在Form上拖放一个DataGrideView控件(注意:不需要指定数据源(DataSource),而只需要在代码中对DataGridView对象的DataSource成员幅值即可);然后再拖放一个DataSet控件(此控制不在窗体上显示出来)。

3、读并在DataGrideView中显示出来


mDbConn = new SQLiteConnection("Data Source=sqlite.student.db");
mDbConn.Open();
dataAdapter = new SQLiteDataAdapter("SELECT * FROM student;", mDbConn);//读数据库
dataAdapter.FillSchema(dataSet1, SchemaType.Source, "student");//将数据库表student的架构信息(此时为主键约束)填充到dataSet1的student表中
dataAdapter.Fill(dataSet1, "student");//填充DataSet控件
dataGridView1.DataSource = dataSet1.Tables["Table"];//注意,DataSet中的数据表依次为Table, Table1, Table2...
mDbConn.Close();

注意:

dataAdapter.FillSchema(dataSet1, SchemaType.Source, "student");
将数据库表student的架构信息(此时为主键约束)填充到dataSet1的student表中

4、写并更新DataGrideView中


mDbConn.Open();
DataRow dataRow = dataSet1.Tables["student"].NewRow();
dataRow["number"] = "20120010";
dataRow["name"] = "李四";
dataRow["grade"] = "2";
dataSet1.Tables["Table"].Rows.Add(dataRow);
dataGridView1.Invalidate();//实时更新dataGridView1
dataAdapter.InsertCommand = new SQLiteCommand("INSERT INTO student(number, name, grade) VALUES('" + dataRow["number"] + "','" + dataRow["name"] + "','" + dataRow["grade"] + "')", mDbConn);
dataAdapter.Update(dataSet1, "student"");
mDbConn.Close();

参数文献

http://msdn.microsoft.com/zh-cn/library/49z48hxc(v=vs.90).aspx
http://msdn.microsoft.com/zh-cn/library/879f39d8(v=vs.80).aspx
http://msdn.microsoft.com/zh-cn/library/879f39d8(v=vs.100).aspx

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

标签:C#,SQLite
0
投稿

猜你喜欢

  • python发腾讯微博代码分享

    2022-05-27 04:45:00
  • linux服务器下PHPCMS v9 安全配置详解

    2023-11-17 11:51:52
  • Golang设计模式工厂模式实战写法示例详解

    2024-05-25 15:11:42
  • vs如何读取mysql中的数据并解决中文乱码问题

    2024-01-19 08:14:01
  • Python re.findall中正则表达式(.*?)和参数re.S使用

    2022-11-14 11:07:33
  • OpenCV Python实现拼图小游戏

    2021-07-30 18:10:34
  • 基于Python实现的扫雷游戏实例代码

    2023-06-26 12:29:34
  • MYSQL中Truncate的用法详解

    2024-01-17 12:00:09
  • 强大的Perl正则表达式实例详解

    2023-08-09 11:12:33
  • PHP控制反转(IOC)和依赖注入(DI)

    2024-05-11 10:09:31
  • 浅谈Python模块导入规范

    2021-02-03 03:39:37
  • Jquery实现div模拟Select控件

    2008-12-01 15:47:00
  • 基于TensorBoard中graph模块图结构分析

    2021-01-11 16:58:52
  • Python中常见的异常总结

    2021-11-15 04:21:27
  • Python 列表映射后的平均值

    2021-12-25 19:02:39
  • Python实现点阵字体读取与转换的方法

    2022-11-08 08:33:27
  • SQLServer2000 报1053错误(服务没有及时响应或控制请求)的解决方法

    2024-01-23 10:40:47
  • 从多个tfrecord文件中无限读取文件的例子

    2023-10-23 13:29:19
  • 往MySQL中存储图片的方法

    2024-01-17 15:57:49
  • jsp页面中获取servlet请求中的参数的办法详解

    2023-06-19 10:52:00
  • asp之家 网络编程 m.aspxhome.com