第5章 数据库操作PPT讲稿.ppt

上传人:石*** 文档编号:43656138 上传时间:2022-09-18 格式:PPT 页数:119 大小:6.58MB
返回 下载 相关 举报
第5章 数据库操作PPT讲稿.ppt_第1页
第1页 / 共119页
第5章 数据库操作PPT讲稿.ppt_第2页
第2页 / 共119页
点击查看更多>>
资源描述

《第5章 数据库操作PPT讲稿.ppt》由会员分享,可在线阅读,更多相关《第5章 数据库操作PPT讲稿.ppt(119页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第第5章章 数据库操作数据库操作第1页,共119页,编辑于2022年,星期二本章知识结构框图本章知识结构框图 数据库操作概数据库操作概述述数据库的数据库的连接连接连线式数据库操作连线式数据库操作离线式数据库离线式数据库操作操作外基本定义1个对象3种数据库连接实例定义与功能3个对象5个步骤1个实例定义与功能2个对象5个步骤1个实例基本定义1个类库5个对象第2页,共119页,编辑于2022年,星期二学习激励与案例导航网易公司首席架构设计师丁磊网易公司首席架构设计师丁磊 丁磊,网易公司首席架构设计师,1971年生于浙江宁波。2007福布斯中国富豪榜排名第63位,资产75亿元。1997年6月创立网易公

2、司。丁磊将网易公司从一个10几个人的私企发展到今天拥有超过1500多名员工,在美国公开上市的知名互联网技术企业。据易观国际数据统计网易在中国网游市场份额中排名第二。第3页,共119页,编辑于2022年,星期二第第5章章数据库操作数据库操作5.1 ASP.NET 5.1 ASP.NET 数据库操作概述数据库操作概述5.2 5.2 数据库的连接数据库的连接5.3 5.3 连线式操作数据库连线式操作数据库5.4 5.4 数据库的离线操作数据库的离线操作第4页,共119页,编辑于2022年,星期二第第5章章数据库操作数据库操作5.1 ASP.NET 5.1 ASP.NET 数据库操作概述数据库操作概述

3、5.2 5.2 数据库的连接数据库的连接5.3 5.3 连线式操作数据库连线式操作数据库5.4 5.4 数据库的离线操作数据库的离线操作第5页,共119页,编辑于2022年,星期二5.1.1 数据库概述ASP.NET的四大板块的四大板块 数据库操作数据库操作 服务器控件服务器控件 常见对象常见对象 C#C#语言基础语言基础 第6页,共119页,编辑于2022年,星期二常用的数据库常用的数据库管理系统管理系统 OracleOracle SybaseSybase InformixInformix Microsoft SQL Server Microsoft SQL Server Visual Fo

4、xProVisual FoxPro Microsoft AccessMicrosoft Access 最常用的以最常用的以Microsoft SQL ServerMicrosoft SQL Server为主为主 第7页,共119页,编辑于2022年,星期二5.1.2 ADO.NET(ActiveDataObject)ADO.NET共有5个常用对象,它们是Connection、Command、DataReader、DataSet、和DataAdapter,如表5-1所示。表5-1ADO.NET常用对象对象功能Connection数据库连接对象,用于建立数据库的连接。Command用于执行数据库命

5、令,针对不同的数据库提供了SqlCommand、OleDbCommand、Odbcommand和OracleCommand几种访问方式,同时也提供从数据库中检索数据、插入数据、修改数据和删除数据的功能。DataReader用于读取数据库中的数据,其优点是速度比较快,缺少是但功能有限。DataSetDataSet对象是数据在内存中的表示形式。它包括多个DataTable对象,而DataTable包含列和行,就象一个普通的数据库中的表一样。DataAdapter数据库适配器,DataSet对象与数据库之间的桥梁,它通过Fill方法把数据库中的数据映射填充到DataSet对象中,通过Update方法

6、更新数据库中的数据,使DataSet对象中的数据与数据库中的数据保持一致。第8页,共119页,编辑于2022年,星期二5.1.3 ADO.NET中的各类数据库接口SQL Server.NET SQL Server.NET 用来访问用来访问SQL Server 7SQL Server 7以及更高级版本以及更高级版本 ADO.NETADO.NET提供了提供了四种数四种数据驱动据驱动程序程序 OkeD.NET OkeD.NET 用来访问包括用来访问包括SQLSQL以及其他类型的数据库以及其他类型的数据库 Oracle Db.NET Oracle Db.NET 专门访问专门访问Oracle 8iDat

7、aReaderOracle 8iDataReader及以上版本及以上版本 的数据库,的数据库,ODBC.NET ODBC.NET 用来访问用来访问ODBCODBC数据源数据源 第9页,共119页,编辑于2022年,星期二第第5章章数据库操作数据库操作5.1 ASP.NET 5.1 ASP.NET 数据库操作概述数据库操作概述5.2 5.2 数据库的连接数据库的连接5.3 5.3 连线式操作数据库连线式操作数据库5.4 5.4 数据库的离线操作数据库的离线操作第10页,共119页,编辑于2022年,星期二6.2.1 数据库连接概述引入命名空间,各种数据库的引入命名空间,各种数据库的引入命名空间,

8、各种数据库的引入命名空间,各种数据库的命名空间各不相同命名空间各不相同命名空间各不相同命名空间各不相同 1 1对对对对ConnectionConnectionConnectionConnection对象实例化对象实例化对象实例化对象实例化 2 2设置连接语句设置连接语句设置连接语句设置连接语句 3 3 打开连接打开连接打开连接打开连接 4 4数据库连接并不复杂,只要执行下列步骤即可完成。第11页,共119页,编辑于2022年,星期二1引入命名空间,各种数据库的命名空间各不相同。如如果果使使用用的的是是SQL SQL ServerServer数数据据库库,则则在在编编写写的的 程程 序序 头头

9、部部 写写 下下 如如 下下 代代 码码:using using System.Data.SqlClient;System.Data.SqlClient;一一如如果果使使用用的的是是AccessAccess数数据据库库,则则在在编编写写的的程程序序 头头 部部 写写 下下 如如 下下 代代 码码:using using System.Data.OleDb;System.Data.OleDb;二二如如果果使使用用的的是是OracleOracle数数据据库库,则则在在编编写写的的程程 序序 头头 部部 写写 下下 如如 下下 代代 码码:using using System.Data.Oracle

10、ClientSystem.Data.OracleClient。三三第12页,共119页,编辑于2022年,星期二2对对Connection对象实例化对象实例化SQL Server SQL Server 数据库数据库 SqlConnection sqlconstr=new SqlConnection sqlconstr=new SqlConnection();SqlConnection();ACCESSACCESS数据库数据库 OleDbConnection oledbconnstr=new OleDbConnection oledbconnstr=new OleDbConnection();O

11、leDbConnection();OralceOralce数据库数据库 OleDbConnection Oracleconnstr=new OleDbConnection Oracleconnstr=new OracleConnection();OracleConnection();第13页,共119页,编辑于2022年,星期二 其中斜体部分由编程者自行命名,但成熟的程序员多命名为:sqlconstr,即sql(SQL 数据库)与connection(连接)及string(字符串)三个单词的缩写,合起来意为SQL 数据库连接字符串。对象实例化:初学者往往不理解什么是对象实例化,我们知道,在C语

12、言中使用变量要先声明,让计算机知道这是一个变量。同样在使用对象的时候也要先声明,告诉计算机sqlconstr是代表数据库连接的一个特殊“变量”。第14页,共119页,编辑于2022年,星期二3 3设置连接语句设置连接语句(1 1)SQL Server SQL Server 数据库:数据库:(2 2)ACCESSACCESS数据库:数据库:(3 3)OracleOracle数据库:数据库:第15页,共119页,编辑于2022年,星期二sqlconstr.ConnectionString=server=localhost;database=test;uid=sa;pwd=,也可以用sqlconst

13、r.ConnectionString=DataSource=localhost;InitialCatalog=test;UserID=sa;Password=;3 3设置连接语句设置连接语句(1 1)SQL Server SQL Server 数据库:数据库:(2 2)ACCESSACCESS数据库:数据库:(3 3)OracleOracle数据库:数据库:第16页,共119页,编辑于2022年,星期二oledbconnstr.ConnectionString=provider=Microsoft.Jet.OLEDB.4.0;datasource=c:lxtest.mdb;3 3设置连接语句设

14、置连接语句(1 1)SQL Server SQL Server 数据库:数据库:(2 2)ACCESSACCESS数据库:数据库:(3 3)OracleOracle数据库:数据库:第17页,共119页,编辑于2022年,星期二Oracleconnstr.ConnectionString=server=MyOraServer;Provider=MSDAORA;userid=sa;password=”。3 3设置连接语句设置连接语句(1 1)SQL Server SQL Server 数据库:数据库:(2 2)ACCESSACCESS数据库:数据库:(3 3)OracleOracle数据库:数据库

15、:第18页,共119页,编辑于2022年,星期二4.4.打开连接打开连接表5-2Connection对象常用属性及方法属性及方法功能ConnectionString属性用于读取或设置打开数据库的字符串ConnectionTimeout属性用于读取数据库尝试连接秒数DataSource属性用于读取数据库所在位置及所在位置的服务器名称或文件夹名称Database属性用于读取或设置连接的数据库名称State属性用于读取当前连接状态Provider属性用于读取数据库驱动程序Open()方法打开数据连接Close()方法关闭数据连接第19页,共119页,编辑于2022年,星期二5.2.2连接到Acces

16、s数据库Access数据库的连接字符串的属性如表5-3所示。表5-3OLEDB.NET数据库连接字符串属性属性说明Data source数据源,一般为数据库文件的物理路径Provider数据源的驱动程序,一般使用Microsoft.jft.OLEDB.4.0驱动程序。还可以使用SQLOLEDB驱动程序连接到SQL Server 6.5即以上版本数据库,使用MSDAORA驱动程序可以连接到Oracle 7数据库Database数据库的名称,一般为应用程序使用的数据库名称Connection timeout表示连接超时的时间,默认为15秒第20页,共119页,编辑于2022年,星期二5.2.3 连

17、接到SQL Server数据库连接SQLServer数据库的字符串相关属性如表5.4所示。表5-4SQLServer数据库连接字符串常用属性属性说明Data sourceSQL Server数据源,即服务器所在机器名称或者是服务器IP地址Server服务器如数据库所在服务器名称Database数据库名称User IDSQL Server数据库的用户IDPasswordSQL Server数据库的用户密码Pooling设置是否使用数据库的连接池Intergrated Security设置登陆数据库时是否使用系统集成验证Connection timeout表示连接超时的时间,默认为15秒第21页,

18、共119页,编辑于2022年,星期二5.2.4连接到Oracle数据库Oracle数据库的连接字符串相关属性如表6-5所示。表5-5Oracle数据库连接字符串常用属性属性说明Data sourceOracle数据库的数据源,即服务器名称也可是服务器IP地址Server服务器如数据库所在服务器名称Database数据库名称User IDOracle数据库的用户IDPasswordOracle数据库的用户密码Pooling设置是否使用数据库的连接池Intergrated Security设置登陆数据库时是否使用系统集成验证Connection timeout表示连接超时的时间,默认为15秒第22

19、页,共119页,编辑于2022年,星期二5.2.5 数据库连接实例(1)启动Visual Studio 2008,在菜单依次单击【文件】【新建】【网站】【ASP.NET 网站】;(2)在设计窗口页面上点右键,选择查看代码;(3)在Page_load事件输入表5-6代码;表5-6使用Connection对象连接数据库代码及解释第23页,共119页,编辑于2022年,星期二程序代码程序代码对应注释对应注释using System.Data.SqlClient;public partial class _5_01:System.Web.UI.Page protected void Page_Load

20、(object sender,EventArgs e)SqlConnection sqlconstr=new SqlConnection();sqlconstr.ConnectionString=server=localhost;database=MyBookShop;uid=sa;pwd=;sqlconstr.Open();Response.Write(数据库已经打开);sqlconstr.Close();引用SqlClient命名空间Connection对象实例化 通过ConnectionString来获取或设置连接语句 打开连接关闭连接第24页,共119页,编辑于2022年,星期二(4)

21、按下CTRL+F5运行程序,得到如下程序界面:图6-1数据库连接实例第25页,共119页,编辑于2022年,星期二第第5章章数据库操作数据库操作5.1 ASP.NET 5.1 ASP.NET 数据库操作概述数据库操作概述5.2 5.2 数据库的连接数据库的连接5.3 5.3 连线式操作数据库连线式操作数据库5.4 5.4 数据库的离线操作数据库的离线操作第26页,共119页,编辑于2022年,星期二5.3.1 连线式操作数据库概述连线式数据库操作也有它自身的优点连线式数据库操作也有它自身的优点连线式数据库操作也有它自身的优点连线式数据库操作也有它自身的优点 是是是是什么呢?什么呢?什么呢?什么

22、呢?那就是它能够高效快速的访问数据库。那就是它能够高效快速的访问数据库。那就是它能够高效快速的访问数据库。那就是它能够高效快速的访问数据库。第27页,共119页,编辑于2022年,星期二ConnectionConnection CommandCommand +连线式数据库连线式数据库三个对象三个对象+DataReaderDataReader 第28页,共119页,编辑于2022年,星期二5.3.2 连线式操作数据库的流程设定数据库连接字符串设定数据库连接字符串 1打开数据库打开数据库打开数据库打开数据库2使用使用使用使用CommandCommand对象向数据库下达操作命令。对象向数据库下达操作

23、命令。对象向数据库下达操作命令。对象向数据库下达操作命令。3使用使用使用使用DataReaderDataReader对象进行各种读取操作。对象进行各种读取操作。对象进行各种读取操作。对象进行各种读取操作。4关闭数据库关闭数据库 5第29页,共119页,编辑于2022年,星期二5.3.3 连线式所使用的Command对象详解使用使用Command对象执行对象执行SQL语句,并返回相语句,并返回相应的结果。应的结果。使用使用Command对象执行存储过程。对象执行存储过程。(1)(2)第30页,共119页,编辑于2022年,星期二表5-7给出了Command对象常用属性及方法。表5-7Comman

24、d对象常用属性及方法属性说明CommandText用于读取或设置要执行的SQL语句或存储过程CommandTimeout用于读取或设置执行命令需要等待的时间CommandType用于读取或设置CommandType命令的类型Connection用于读取或设置命令所使用的连接对象Parameters用于读取与该命令关联的参数集合Transaction用于读取或设置执行命令的任务ExecuteReader()执行查询,并返回查询数据ExecuteScalar()执行查询,并返回查询数据第一行第一列数据值ExecuteNonQuery()执行非查询命令,并返回受影响的行数ExecuteXmlRead

25、er执行查询,返回XML数据Cancel 取消执行命令第31页,共119页,编辑于2022年,星期二5.3.3.1 创建Command对象(1 1)先先声声明明一一个个Command对对象象,然然后后设设置置相相应应的的CommandText和和Connection属性。属性。(2 2)创建创建Command对象时直接对对象时直接对CommandText和和Connection属性进行赋值。属性进行赋值。以下语句给出了两种创建Command对象的方式。/第一种方式SqlCommandmyCommand=newSqlCommand();/第二种方式SqlCommandcatCMD=newSqlC

26、ommand(SELECTCategoryID,CategoryNameFROMCategories,nwindConn);第32页,共119页,编辑于2022年,星期二5.3.3.2 使用Command对象 使用使用CommandCommand对对象操作数象操作数据库的方据库的方法主要有法主要有以下四种:以下四种:1 1读取整个数据表读取整个数据表 2 2执行执行SQLSQL命令命令 3 3调用存储过程调用存储过程 4 4返回单一结果返回单一结果 第33页,共119页,编辑于2022年,星期二1读取整个数据表 表5-8是通过ExecuteReader方法执行读取整个数据表,并绑定GridVi

27、ew控件的应用案例,运用到了Command对象的ExecuteReader方法,操作步骤如下:(1)(2)(3)启动VisualStudio2008,在菜单上依次单击【文件】【新建】【网站】【ASP.NET网站】;在工具箱上拖曳或双击DataView图标至设计窗口;在设计窗口页面上点右键,选择查看代码,在Page_load事件输入表5-8代码;第34页,共119页,编辑于2022年,星期二表5-8读取整个数据表程序代码及解释程序代码程序代码对应注释对应注释using System.Data.SqlClient;public partial class _5_02:System.Web.UI.P

28、age protected void Page_Load(object sender,EventArgs e)SqlConnection sqlconstr=new SqlConnection();sqlconstr.ConnectionString=server=localhost;database=MyBookShop;uid=sa;pwd=;string safeSql=Select*FROM book;SqlCommand cmd=new SqlCommand(safeSql,sqlconstr);sqlconstr.Open();SqlDataReader myReader=cmd.

29、ExecuteReader();this.GridView1.DataSource=myReader;GridView1.DataBind();sqlconstr.Close();设置数据库连接字符串设置SQL语句command对象实例化打开数据库执行查询命令绑定数据源关闭数据库第35页,共119页,编辑于2022年,星期二(4)按下CTRL+F5运行程序,得到如下程序界面:图6-8读取数据表实例第36页,共119页,编辑于2022年,星期二2 2执行执行SQLSQL命令命令 表5-9是通过ExecuteNonQuery 将一条记录插入数据库,并更新到GridView控件的应用案例,运用到了C

30、ommand对象的ExecuteNonQuery方法,操作步骤如下:(1)启动Visual Studio 2008,在菜单依次单击【文件】【新建】【网站】【ASP.NET网站】;(2)在工具箱上拖曳或双击DataView图标,4个标签Label1、Label2、Label3、Label4,并将相应的Text属性修改为:编号、书名、作者、单价,4个文 本框TextBox1、TextBox2、TextBox3、TextBox4,2个按钮Button1和 Button2至 设计窗口;设计窗口如图5-9所示:图6-9执行SQL命令实例设计第37页,共119页,编辑于2022年,星期二(3)双击按钮Bu

31、tton1,编写代码如表5-9所示;表5-9执行SQL命令程序代码及解释程序代码程序代码对应注释对应注释 protected void Button1_Click(object sender,EventArgs e)SqlConnection sqlconstr=new SqlConnection();sqlconstr.ConnectionString=server=localhost;database=MyBookShop;uid=sa;pwd=;string UpdateSql=INSERT INTO Book(ID,Title,Author,UnitPrice)Values(+Text

32、Box1.Text.ToString().Trim()+,+TextBox2.Text.ToString().Trim()+,+TextBox3.Text.ToString().Trim()+,+TextBox4.Text.ToString().Trim()+);SqlCommand cmd=new SqlCommand(UpdateSql,sqlconstr);sqlconstr.Open();cmd.ExecuteNonQuery();sqlconstr.Close();BindData();设置数据库连接字符串设置插入语句command对象实例化打开连接执行插入语句关闭连接绑定DataV

33、iew第38页,共119页,编辑于2022年,星期二(4)按下CTRL+F5运行程序,得到如下程序界面:图6-9执行SQL命令实例第39页,共119页,编辑于2022年,星期二3 3调用存储过程。调用存储过程。表5-10是调用带参数的存储过程查询数据库,并更新到GridView控件的应用案例,综合运用了Command对象的各种属性和方法,操作步骤如下:在工具箱上拖曳在工具箱上拖曳或双击或双击DataViewDataView图标至设计窗口;图标至设计窗口;启动启动Visual Visual Studio 2008,Studio 2008,在菜单依次单在菜单依次单击【文件】【击【文件】【新建】【网

34、站新建】【网站】【】【ASP.NET ASP.NET 网站】;网站】;在设计窗口页在设计窗口页面上点右键,面上点右键,选择查看代码,选择查看代码,在在Page_loadPage_load事件输入表事件输入表6-6-1010代码;代码;(1)(2)(3)表5-10调用存储过程程序代码及解释第40页,共119页,编辑于2022年,星期二程序代码程序代码对应注释对应注释using System.Data.SqlClient;public partial class _5_04:System.Web.UI.Page protected void Page_Load(object sender,Even

35、tArgs e)SqlConnection sqlconstr=new SqlConnection();sqlconstr.ConnectionString=server=localhost;database=MyBookShop;uid=sa;pwd=;SqlCommand cmd=new SqlCommand(Pro_SelectBookCategory,sqlconstr);cmd.CommandType=CommandType.StoredProcedure;SqlParameter myParm=cmd.Parameters.Add(CategoryID,SqlDbType.Int)

36、;myParm.Value=1;sqlconstr.Open();SqlDataReader myReader=cmd.ExecuteReader();this.GridView1.DataSource=myReader;GridView1.DataBind();sqlconstr.Close();创建连接设置连接字符串指定存储过程 设置命令类型为StoredProcedure 设置存储过程的参数 设置存储过程参数的值 创建DataReader对象,并输出查询结果绑定DataView关闭连接第41页,共119页,编辑于2022年,星期二(4)按下CTRL+F5运行程序,得到如下程序界面:图6-

37、10调用存储过程实例第42页,共119页,编辑于2022年,星期二4 4返回单一结果。返回单一结果。表5-11是使用Count函数来返回表中的记录数的应用案例,运用了Command对象的ExecuteScalar方法,操作步骤如下:(1)启动Visual Studio 2008,在菜单依次单击【文件】【新建】【网站】【ASP.NET 网站】;(2)在设计窗口页面上点右键,选择查看代码,在Page_load事件输入表5-11代码;表5-11返回单一结果程序代码及解释第43页,共119页,编辑于2022年,星期二程序代码程序代码对应注释对应注释using System.Data.SqlClient

38、;public partial class _5_05:System.Web.UI.Page protected void Page_Load(object sender,EventArgs e)SqlConnection sqlconstr=new SqlConnection();sqlconstr.ConnectionString=server=localhost;database=MyBookShop;uid=sa;pwd=;sqlconstr.Open();String mySelectQuery=SELECT Count(*)FROM Book;SqlCommand myComman

39、d=new SqlCommand(mySelectQuery,sqlconstr);Int32 count=(Int32)myCommand.ExecuteScalar();Response.Write(数据行数:+count);sqlconstr.Close();创建连接设置连接字符串打开数据库设置SQL语句command对象实例化检索单个值,返回结果输出结果关闭数据库第44页,共119页,编辑于2022年,星期二(3)按下CTRL+F5运行程序,得到如下程序界面:图6-11返回单一结果实例5.3.4 连线方式所使用的DataReader对象详解DataReader对象提供的属性以及方法见表

40、5-12所示。表5-12DataReader对象常用属性及方法第45页,共119页,编辑于2022年,星期二属性说明FieldCount 用于读取当前行中的列数 HasRows 用于读取指示DataReader是否包含一行或多行的值 IsClosed 用于读取指示数据读取器是否已关闭的值 Close 关闭DataReader对象 GetBoolean 用于读取指定列的布尔值形式的值 GetByte 用于读取指定列的字节形式的值 GetChar 用于读取指定列的单个字符串形式的值 GetDateTime 用于读取指定列的DateTime对象形式的值 GetDecimal 用于读取指定列的Deci

41、mal对象形式的值 GetDouble 用于读取指定列的双精度浮点数形式的值 GetFieldType 用于读取指定对象的数据类型 GetFloat 用于读取指定列的单精度浮点数形式的值 GetInt32 用于读取指定列的32位有符号整数形式的值 GetInt64 用于读取指定列的64位有符号整数形式的值 GetName 用于读取指定列的名称 GetSchemaTable 返回描述SqlDataReader的列元数据的DataTable GetSqlBoolean 用于读取指定列的SqlBoolean形式的值 GetString 用于读取指定列的字符串形式的值 GetValue 用于读取以本机

42、格式表示的指定列的值 NextResult 读取批处理Transact-SQL语句的查询结果时,数据读取器前进一步 Read 使SqlDataReader前进到下一条记录。第46页,共119页,编辑于2022年,星期二6.3.4.1 创建DataReader对象创建DataReadef对象只能通过Command对象的ExecuteReader方法进行创建,而不能像其他的类那样直接使用New关键字创建。以下语句创建了一个SqlDataReader对象:SqlDataReadermyReader=myCommand.ExecuteReader();6.3.4.2 使用DataReader对象Get

43、DateTimeGetDateTime 1 1GetDoubleGetDouble 2 2GetGuidGetGuid 3 3GetInt32GetInt32 4 4DataReader访问其本机数据类型第47页,共119页,编辑于2022年,星期二 使用DataReader对象的Read方法可从查询结果中获取行数据。根据获取数据方法的不同,该操作可以分为以下四种:一一使用类型访问数据列使用类型访问数据列 二二使用索引访问数据列使用索引访问数据列 三三使用列名访问数据列使用列名访问数据列 四四访问数据列的名称和属性访问数据列的名称和属性 第48页,共119页,编辑于2022年,星期二1.1.使

44、用类型访问数据列使用类型访问数据列 DataReader对象可以使用不同类型数据的方法查询返回行的每一列。具体语句如下:while(myReader.Read()Response.Write(ID:+myReader.GetInt32(0)+,+书名:+myReader.GetString(1)+);myReader.Close();应用提醒:使用DataReader对象时尽量使用和数据库字段类型匹配的方法来取得相应的值,比如对于整形的字段使用GetInt32,对字符类型的字段使用GetString。第49页,共119页,编辑于2022年,星期二2.2.使用索引访问数据列使用索引访问数据列 D

45、ataReader对象可以直接使用列的索引查询返回行的每一列。具体语句如下:while(myReader.Read()Response.Write(ID:myReader0.ToString()+,+书名:myReader1.ToString()+);myReader.Close();3 3使用列名访问数据列使用列名访问数据列 DataReader对象还可以直接使用列的名称查询返回行的每一列。具体语句如下:while(myReader.Read()Response.Write(ID:+myReader“id”+,+书名:+myReader“Title”+);myReader.Close();第

46、50页,共119页,编辑于2022年,星期二4 4访问数据列的名称和属性访问数据列的名称和属性DataReader对象进一步提供了GetName和GetDataTypeName方法获取返回行每一列的列名和数据类型。具体语句如下:Response.Write(myReader.GetName(i),myReader.GetDataTypeName(i);表6-13是过Command对象执行查询命令,通过DataReader对象读取全部数据,最后将结果更新到GridView控件的应用案例,综合运用了 Command对象和DataReader对象的各种属性和方法,操作步骤如下:(1)启动Visual

47、Studio2008,在菜单上依次单击【文件】【新建】【网站】【ASP.NET网站】;(2)在设计窗口页面上点右键,选择查看代码,在Page_load事件输入表6-13代码;第51页,共119页,编辑于2022年,星期二表6-13通过DataReader读取数据程序代码及解释程序代码程序代码对应注释对应注释01 02 03 04 05 06 07 08 09 10 11 12 13 14 1516 17 18 19202122232425 using System.Data.SqlClient;public partial class _5_06:System.Web.UI.Page prot

48、ected void Page_Load(object sender,EventArgs e)SqlConnection sqlconstr=new SqlConnection();sqlconstr.ConnectionString=server=localhost;database=MyBookShop;uid=sa;pwd=;String mySelectQuery=SELECT*FROM Book;SqlCommand myCommand=new SqlCommand(mySelectQuery,sqlconstr);sqlconstr.Open();SqlDataReader myR

49、eader=myCommand.ExecuteReader();while(myReader.Read()Response.Write(ID:+myReader.GetInt32(0)+,+书名:+myReader.GetString(1)+);myReader.Close();sqlconstr.Close();01 02 03 04 05 06 07 08 09 10 11 12 13 14 1516 17 18 19202122232425创建连接设置连接字符串设置SQL命令创建Command对象打开连接创建DataReader对象循环读取数据关闭DataReader对象断开连接第52页

50、,共119页,编辑于2022年,星期二应用提醒:在同一时间内,一个Connection对象只能打开一个DataReader对象。在该DataReader对象关闭之前,无法打开其他DataReader对象,直到该DataReader对象调用Close方法为止。因此,应该尽早的关闭DataReader对象。(3)按下CTRL+F5运行程序,得到如下程序界面:图6-13使用DataReader对象读取数据实例第53页,共119页,编辑于2022年,星期二6.3.5 连线方式实例表6-13是使用连线式数据库操作的应用案例,具体操作步骤如下:(1)启动Visual Studio 2008,在菜单依次单击

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁