【ADO.NET】数据库操作
来源:互联网 发布:对锐捷网络的了解 编辑:程序博客网 时间:2024/06/05 02:08
接触ADO.NET,下午自己摸索着用代码实现了点增删改查的知识,特此总结 分享一下
Select :用于检索数据
Insert:用于增加数据到数据库
Update:用于从数据库中修改现存的数据
delete:用于从数据库中删除数据
ADO.NET包含四个主要对象
Connection对象:用于连接数据库
command对象:对数据源执行命令
dataReader对象:在只读和只进的连接模式下从数据源读取数据
DataAdapter对象:从数据源读取数据并使用所读取的数据填充数据集对象
下面是具体的一些小实践
- 连接
要访问数据库,首先要与数据库建立连接,这就用到了connection对象来与特定的数据库建立连接 具体语句如下:
Dim cnStr As String= "Persist Security Info=False;User ID=sa;Initial Catalog=需要连接的数据库名;Data Source=IP或本机名字;pwd=密码" Dim cn As SqlConnection = NewSqlConnection(cnStr) cn.Open()
2. 命令
ADO.NET 提供了两种访问数据库的基本方式
1.使用数据集,
2 直接对数据库进行操作 这些就需要command对象来执行SQL语句实现,在连接好数据库的基础上,首先我们要构造命令对象
DimcnStr As String = "Persist Security Info=False;User ID=sa;InitialCatalog=StudentSystem;Data Source=192.168.24.74;pwd=123456" Dim cn As SqlConnection = NewSqlConnection(cnStr) cn.Open() Dim sql1 As String = "select *from T_user " Dim cmdq As SqlCommand = NewSqlCommand(sql1, cn)
例如上述代码便是构造了一个名称为cmdp的命令对象,它使用的连接对象为cn,所要执行的命令是从表T_user中选择所有的数据
而对于command对象的几个基本重要属性如下 :
属性
含义
commandText
获取或设置要对数据源执行的SQL语句或存储过程
commandTimeout
获取或设置在终止执行命令的尝试并生成错误之前的等待时间
commandType
获取或设置一个值,该值指示如何解释commandText
connection
获取或设置该命令对象使用的connection连接对象
对于上段代码中的Dim cmdq As SqlCommand= New SqlCommand(sql1, cn)这句话我们也可以用另一种方式来描述
Dim cmdq As SqlCommand = New SqlCommand() cmdq.CommandText = sql1 cmdq.Connection = cn
表达的意思是一样的,这里就利用了command对象的几个属性,这样就可以清晰的看出每个属性该怎么应用
3.读取数据(DataReader)
它是一个从数据源中选择某些数据的最简单的方法,DataReader没有构造函数,因此不能实例化,但可以通过command对象的executeReader方法返回一个实例 例如下面的代码
Dim cnStr As String = "Persist SecurityInfo=False;User ID=sa;Initial Catalog=StudentSystem;DataSource=192.168.24.74;pwd=123456" 'Dim dr As SqlDataReader =cmdq.ExecuteReader() 'While (dr.Read()) ' Dim uid As String = dr("U_ID").ToString() ' Label1.Text = uid 'End While
将需要的数据读取出来并输出到文本里面
4.数据的插入:
这里我自己用了一个小例子,打算在三个文本框中输入内容,将这些内容保存到数据库中 具体实现代码如下:
Dim cnStr As String = "Persist SecurityInfo=False;User ID=sa;Initial Catalog=StudentSystem;DataSource=192.168.24.74;pwd=123456" 'Dim dr As SqlDataReader =cmdq.ExecuteReader() 'While (dr.Read()) ' Dim uid As String = dr("U_ID").ToString() ' Label1.Text = uid 'End While
在这里我的理解是,在传递值到数据库的过程中,设定以一个参数,通过这个参数在中间来传递值,也就是占位符,文本框把值传给了占位符参数中,而它又把这个值传给了数据库中,进而将数据存储在数据库中! 占位符在这里是一个中间变量,这样传递会更安全些吧,文本框只需知道把值传给占位符就可以了,而哪个表需要这些传就来的数据直接从占位符那里取出就可以了,这是不是也就降低了耦合呢!
3.数据的读取
在我将数据插入到数据库后,加入我想将数据读取出来,显示到控制台上又该如何操作呢,实践代码如下:
Private Sub Button2_Click(sender As Object, eAs EventArgs) Handles Button2.Click Dim cnStr As String = "PersistSecurity Info=False;User ID=sa;Initial Catalog=StudentSystem;DataSource=192.168.24.74;pwd=123456" Dim cn As SqlConnection = NewSqlConnection(cnStr) cn.Open() Dim sql1 As String = "select *from T_user " Dim cmdq As SqlCommand = NewSqlCommand(sql1, cn) Dim adp As SqlDataAdapter = NewSqlDataAdapter() adp.SelectCommand = cmdq Dim ds As DataSet = New DataSet() adp.Fill(ds, "T_user") TextBox1.DataBindings.Add("text", ds,"T_user.U_userlevel") TextBox2.DataBindings.Add("text", ds, "T_user.U_ID") TextBox3.DataBindings.Add("text", ds,"T_user.U_password") End SubEndClass
只需要改变SQL语句即可,在我们插入时用insert 而在读取时需要select 更新时用update 删除时是delete
在上述代码中读取数据时,就用到了DataAdapter 以及DataSet
DataSet是一个数据的脱机容器,可以形象地描述为内存中的数据库。上述代码中我将需要的数据填充到数据集中,然后将数据从数据库中需要使用到适配器,也就是Dataadapter
Dataadapter就像是一座桥梁用于在数据源和数据集之间交换数据
而数据适配器可以读取、添加、删除、更新数据源中的记录 它的四个属性如下:
1.SelectCommand:指定对象以便从数据存储区检索行
2.InsertCommand:指定某命令对象以便想数据存储区插入行
3.UpdateCommand:指定某命令对象以便修改数据存储区中的行
DeleteCommand:指定某命令对象以便从数据存储区中删除行
暂时先总结这些,学无止境,革命尚未成功,战士仍需努力!
- 【ADO.NET】数据库操作
- ADO.NET操作数据库
- ADO.NET操作数据库
- ADO.NET数据库操作小记
- ADO.NET数据库操作小记
- ADO.net操作数据库总结
- ado.net操作数据库总结
- ADO.NET操作数据库技术
- ADO.net操作数据库总结
- ado.net操作数据库总结
- ado.net操作数据库总结
- ADO.net操作数据库总结
- 通过ADO.NET操作数据库
- 数据库的操作 ADO.NET
- C# ADO.NET数据库操作
- ADO.NET操作数据库(一)
- ADO.NET操作数据库(二)
- ADO.NET操作数据库(三)
- Linux 常用命令
- Android中的Activity四种启动模式(launchMode)
- UVa 10439 - Temple of Dune
- LevelDB的实现原理
- 数据库启动过程图及SCN讲解
- 【ADO.NET】数据库操作
- Android编译系统及命令分析
- jquery获取元素
- hive 的drop table命令出错
- ubuntu apt源
- 获得document的iframe时有两种方法
- 杭电水题--1196 Lowest Bit (bitset:to_string有关问题)
- BackTrack5 学习笔记四
- 使用七牛储存 Octopress 图片