读书人

经过ADO.NET操作数据库

发布时间: 2013-03-17 13:48:31 作者: rapoo

通过ADO.NET操作数据库

数据库操作主要是执行命令和读取数据

1.连接

要访问数据库,首先要与数据库建立连接,在ADO.NET中是通过Connection对象与数据库建立连接的

例如:建立与SQLServer服务器上Mycharge数据库连接的代码:

1.新建一个文本文件,将其扩展名改为udl

2.双击你刚建好的文件,将打开“数据库连接属性”对话框

3.在“提供程序”选项卡选择某个提供者,这里我们选的是SQL Server,单击下一步按钮

经过ADO.NET操作数据库

4.在“连接”选项卡中输入数据库名称,用户名,密码等信息,单击“测试连接”按钮查看连接是否成功

经过ADO.NET操作数据库

5.如果成功的话,关闭此对话框,使用记事本再次打开该文件,其中就包含你想要的信息了

经过ADO.NET操作数据库

注意:由于SQLServer对象是专门针对SQLServer数据库的,它的连接串中不允许指定Provider属性,所以你不要激 动的把上面所有的信息都复制下来,那样是不对的,而要将Provider=SQLOLEDB.1去掉,只复制其后的内容就足够啦!对于其他数据提供程序的Connection对象,如OleDbConnection对象就不存在这个问题

2.命令

ADO.NET访问数据的基本方式

  1. 使用数据集
  2. 直接对数据库进行操作

如何使用数据集访问?


1.填充数据集

将外部数据源数据加载到数据集中(使用适配器)

什么是适配器

适配器就好像是一座桥梁,用于数据源和数据集之间减缓数据,如图所示

经过ADO.NET操作数据库


使用适配器可以对数据进行增,删,改,查,分别为:


  1. SelectCommand:指定某命令对象以便从数据存储区检索行
  2. InsertCommand:指定某命令对象以便向数据存储区插入行
  3. UpdateCommand:指定某命令对象以便修改数据存储区中的行
  4. DeleteCommand:指定某命苦对象以便从数据存储区删除行

2.数据集更新


  1. 更新数据集中的数据(一般为增,删,改)
  2. 将更新后的数据集同写到数据源中,也就是说,更新数据集的过程不会同时将更改直接写入数据源,因为数据源是断开连接的,必须通过代码显式执行一下。具体做法是调用数据适配器的Update方法

注:在某些情况下是不能使用数据集的。例如想要创建表之类的数据库元素,则必须使用命令对象

如何直接对数据库进行操作?

通过Command(命令)对象执行SQL语句或存储过程,如果执行的结果返回的是一个记录集,则可以使用DataReader(数据读取器)对象读取数据。.NET针对不同的提供程序创建了相应的Command对象,例如:

OleDbCommand:用于OLE DB提供程序SQLCommand:SQL Server7.0或更高版本ODBCCommand:ODBC数据源的Command对象

使用command对象的步骤


1.构造命令对象


下面是一段构造cmd命令对象的代码。它使用的连接对象为cn。所要执行的命令是从Information表中选择所有的数据

2.执行命令

命令对象所提供的用于执行命令的方法有很多,具体使用哪个方法取决于命令的执行结果返回什么样的数据

  • Cancel:取消命令的执行
    • ExecuteNonQuery:执行非查询类SQL语句并返回受影响的行数
      • ExecuteReader:执行查询,将查询结果返回到DataReader中
        • ExecuteScalar:执行查询,并返回查询所返回的结果集中第一行的第一列,忽略额外的列或行
          • ExecuteXmlReader:执行查询,将查询结果返回到一个XmlReader对象中

            3.读取数据

            下面代码是从表Information中读取数据,并将数据列ID和Name的所有数据输出到控制台

          • DateReader是一个只向前的连接光标,即只能沿一个方向遍历记录,在此过程中数据库连接要一直保持打开状态,否则将不能通过DataReader读取数据
            1. 在完成数据读取后,需要调用Close()方法关闭DataReader对象,

读书人网 >其他数据库

热点推荐