简介

使用SQLite进行讲解

1.基础类:

SQLiteConnection 连接数据库
SQLiteCommand 执行命令(增,删,改,查),或存储过程
SQLiteDataReader 读取查询到的数据

2.SQLiteCommand讲解

CommandType 获取或设置Command对象要执行命令的类型
CommandText 获取或设置要对数据库执行的SQL语句或存储过程名或表名
CommandTimeOut 获取或设置在终止对执行命令的尝试并生成错误之前的等待时间
Parameters 获取Command对象需要使用的参数集合
   
ExecuteScalar  执行命令(查)返回数据中第一行第一列的值。
ExecuteNonQuery 执行命令(增,删,改,查)
ExecuteReader  执行命令(查)返回查到的所有数据

一.下载SQLite库

二.使用

1.连接

$@"Data Source={Application.StartupPath}\Test.db;Password=;Version=3;"

2.增

        private void btnAdd_Click(object sender, EventArgs e)
{
string name = "张三";
int age = ; using (SQLiteConnection conn = new SQLiteConnection(connStrl))
{
conn.Open();
using (SQLiteCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "insert into test(name,age) values(@name,@age);";
cmd.Parameters.AddWithValue("@name", name);
cmd.Parameters.AddWithValue("@age", age);
cmd.ExecuteNonQuery();
}
conn.Close();
}
}

3.删

        private void btnDelete_Click(object sender, EventArgs e)
{
string name = "张三"; try
{
using (SQLiteConnection conn = new SQLiteConnection(connStrl))
{
conn.Open();
using (SQLiteCommand cmd = conn.CreateCommand())
{
cmd.CommandText = $"delete from test where name=@name";
cmd.Parameters.AddWithValue("@name", name);
cmd.ExecuteNonQuery();
}
conn.Close();
}
}
catch (Exception)
{
throw;
}
}

4.改

        private void btnUpdate_Click(object sender, EventArgs e)
{
string nameOld = "张一";
string nameNew = "张四"; try
{
using (SQLiteConnection conn = new SQLiteConnection(connStrl))
{
conn.Open();
using (SQLiteCommand cmd = conn.CreateCommand())
{
cmd.CommandText = $"update test set name=@nameNew where name=@nameOld";
cmd.Parameters.AddWithValue("@nameOld", nameOld);
cmd.Parameters.AddWithValue("@nameNew", nameNew);
cmd.ExecuteNonQuery();
}
conn.Close();
}
}
catch (Exception)
{
throw;
}
}

5.查

        private void btnSelect_Click(object sender, EventArgs e)
{
textBox1.Text = "";
try
{
using (SQLiteConnection conn = new SQLiteConnection(connStrl))
{
conn.Open();
using (SQLiteCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "select name,age from test";
using (SQLiteDataReader reader = cmd.ExecuteReader())
{
if (reader.HasRows)
while (reader.Read())
{
string name = reader.GetString();
int age = reader.GetInt32(); textBox1.Text += $"name:{name} age:{age}\r\n";
}
}
}
}
}
catch (Exception)
{
throw;
}
}

C#ADO.NET基础一的更多相关文章

  1. ADO.NET基础03

    数据库和VS的连接,实现数据的同步,让用户的一切信息都可以在数据库中留下记录. ADO.NET基础      它是连接所有数据库的一种特殊的技术,提供对不同的数据库统一操作接口. 在VS中也可以添加数 ...

  2. .Net Core 系列:2、ADO.Net 基础

    目录: 1.环境搭建 2.ADO.Net 基础 3.ASP.Net Core 基础 4.MD5.Sha256.AES 加密 5.实现登录注册功能 6.实现目录管理功能 7.实现文章发布.编辑.阅览和删 ...

  3. 有关ADO.NET基础中的基础的熟悉过程

    现在对于ADO.NET基础的理解与记忆并不严谨和完善 所以,只写一点关于自己的理解,嗯,一种去转换思维理解的方法吧,算是吧 希望各位前辈或者同学,积极指出其中的错误和偏差 个人对于刚接触的ADO.NE ...

  4. 如鹏网学习笔记(六)ADO.Net基础

    ADO.Net基础 一.ADO.Net简介 1,程序要通过SQL语句自动化的操作数据库,必须要用一个类库, 类库要提供execute("insert into ...")/exec ...

  5. ADO.NET基础开发

    ADO.NET是微软新一代.NET数据库的访问架构,ADO是ActiveX Data Objects的缩写.ADO.NET是数据库应用程序和数据源之间沟通的桥梁,主要提供了一个面向对象的数据访问架构, ...

  6. ADO.NET基础巩固-----连接类和非连接类

          最近的一段时间自己的状态还是不错的,早上,跑步,上自习看书,下午宿舍里面编程实战,晚上要么练习代码,要么去打球(在不打就没机会了),生活还是挺丰富的. 关于C#的基础回顾就先到前面哪里,这 ...

  7. ADO.NET基础(增删改查)

    ADO.NET是一种数据访问技术,就是将C#和MSSQL连接起来的一个纽带.可以通过ADO.NET将内存中的临时数据写入到数据库中,也可以将数据库中的数据提取到内存中供程序调用. ADO.NET是所有 ...

  8. C# ADO.NET基础&实战

    什么是ADO.NET:数据库访问技术! 作用:通过程序来连接访问数据库! 一.基础: using System.Data.SqlClient;    //数据库连接命名空间 string connec ...

  9. ADO.NET基础知识学习(SQLCOnnection&SQLCommand&SQLDataReader&SQLDataAdapter&DataSet)

    通过ADO.NET技术,我们可以高效的完成客户端同数据库之间的数据访问操作,便于我们在客户端程序简便高效的访问以及获取数据库中的有用数据,同时也可以对数据库中的数据进行更新,即可以完成客户端与数据库之 ...

  10. 【ADO.NET基础-GridView】GridView的编辑、更新、取消、删除以及相关基础操作代码

    代码都是基础操作,后续功能还会更新,如有问题欢迎提出和提问....... 前台代码: <asp:GridView ID=" OnRowDataBound="GridView1 ...

随机推荐

  1. phpmailer实现邮件发送

    phpmailer实现邮件发送 1.代码 <?php require("class.phpmailer.php"); //这个是一个smtp的php文档,网上可以下载得到 $ ...

  2. PL/SQL 训练11--包

    --所谓包,就是把一组PL/SQL的代码元素组织在一个命名空间下.--一种可以把程序或者其他的PL/SQL元素比如游标.类型.变量的组织结构在一起的结构(包括逻辑结构和物理结构)--包提供了非常重要的 ...

  3. python开发面向对象基础:接口类&抽象类&多态&钻石继承

    一,接口类 继承有两种用途: 一:继承基类的方法,并且做出自己的改变或者扩展(代码重用) 二:声明某个子类兼容于某基类,定义一个接口类Interface,接口类中定义了一些接口名(就是函数名)且并未实 ...

  4. mysql表的增删改查

    一.表介绍 表相当于文件,表中的一条记录就相当于文件的一行内容,不同的是,表中的一条记录有对应的标题,称为表的字段 id,name,qq,age称为字段,其余的,一行内容称为一条记录 二.创建表 cr ...

  5. Window中的内存地址(小知识)

    现在的编辑器大部分工作都是内存管理托管型,所以很少直接对Window的内存地址直接管理了. Window中的内存地址主要是以16进制数字体现的,当操作系统为32位时,那么每个内存地址为2的32次方,也 ...

  6. 编写一个jQuery的扩展方法(插件)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. Three.js创建运动立体几何体示例

    效果图 安装 帧率统计工具 变量控制GUI demo 效果图 安装 npm install three 帧率统计工具 // 监听动画帧率 var Stats = function () { var m ...

  8. Python 约束 , 自定义异常 , 加密 , 日志

    约束 约束 , 约束其派生类:  保证派生类中必须编写send方法 , 不然执行可能就会报错 Python中  语法: class BaseMessage(object): def send(self ...

  9. Realsense D430 python pointclound

    来自:https://github.com/IntelRealSense/librealsense/issues/1231------------------------------ import p ...

  10. Apache apachectl命令

    一.简介 apachectl命令是Apache的Web服务器前端控制工具,用以启动.关闭和重新启动Web服务器进程. 二.语法 http://www.jinbuguo.com/apache/menu2 ...