




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:9787121260360“十二五十二五”普通高等教育本科国家级规划教材普通高等教育本科国家级规划教材Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:9787121260360第第 1 章章 Web编程基础知识编程基础知识 第第 2 章章 Web应用程序开发与运行环境应用程序开发与运行环境 第第 3 章章 HTML与与XML 第第 4 章章 层叠样式表层叠样式表CSS 第第 5 章章 Web客户端程序设计客户端程序设计第第 6 章章 Web服务器端程序设计服务器端
2、程序设计 第第 7 章章 Web数据库程序设计数据库程序设计 第第 8 章章 ASP.NET综合应用实例综合应用实例 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:9787121260360第第 7 7 章章 WebWeb数据库程序设计数据库程序设计7.1 Web数据库访问技术数据库访问技术 7.2 ODBC接口接口 7.3 数据库语言数据库语言SQL 7.4 ADO.NET数据库组件数据库组件 7.5 ADO.NET对象对象 7.6 数据源与数据源与Web控件的绑定控件的绑定 7.7 ADO.NET数据库访问示例数据库访问示例学生成学生成绩查询与修
3、改绩查询与修改 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.1 Web数据库访问技术数据库访问技术 Web数据库访问一般基于数据库访问一般基于ODBC(Open Database Connectivity)或)或JDBC(Java Database Connectivity)平台。)平台。ODBC是一个数据库编程接口,由是一个数据库编程接口,由Microsoft公司建公司建议并开发。它允许程序使用结构化查询语言(议并开发。它允许程序使用结构化查询语言(SQL)作为数据访问标准,应用程序可通过调用作为数据访问标准,应用程
4、序可通过调用ODBC的接的接口函数来访问来自不同数据库管理系统的数据。口函数来访问来自不同数据库管理系统的数据。 JDBC与与ODBC一样是支持基本一样是支持基本SQL功能的一个通用功能的一个通用低层的应用程序编程接口(低层的应用程序编程接口(API),它在不同的数据),它在不同的数据库功能模块层次上提供一个统一的用户界面。库功能模块层次上提供一个统一的用户界面。JDBC提供一个提供一个Java语言的语言的API。 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.2 ODBC接口接口 7.2.1 ODBC接口概述接口概述
5、ODBC用动态链接库(用动态链接库(Dynamic Link Libraries,DLL)调用调用ODBC驱动程序来完成对数据库的访问。驱动程序来完成对数据库的访问。 对应于某一种对应于某一种DBMS有相应的有相应的ODBC驱动程序,当驱动程序,当DBMS改变时,只要更换改变时,只要更换ODBC驱动程序而无须更改应驱动程序而无须更改应用程序。用程序。 ODBC主要定义了以下内容:主要定义了以下内容:(1)ODBC函数库。它为应用程序提供连接函数库。它为应用程序提供连接DBMS、执、执行行SQL语句、提取访问结果的程序接口。语句、提取访问结果的程序接口。(2) SQL语法。它遵循语法。它遵循X/
6、Open and SQL Access Group Call Level Interface Specification标准。标准。(3)错误代码。)错误代码。(4)连接、登录)连接、登录DBMS。(5)数据类型。)数据类型。 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.2 ODBC接口接口 7.2.2 ODBC的应用的应用一个一个ODBC应用的建立应涵盖以下内容:应用的建立应涵盖以下内容:(1)建立需要操作数据库的应用程序。该程序通过调用)建立需要操作数据库的应用程序。该程序通过调用ODBC函数提交函数提交SQL语句
7、。语句。(2)提供运行环境。该环境应包含数据库驱动程序,它负)提供运行环境。该环境应包含数据库驱动程序,它负责处理责处理ODBC函数调用,向数据源提交函数调用,向数据源提交SQL请求,向应用程请求,向应用程序返回结果。必要时,将序返回结果。必要时,将SQL语法翻译成符合语法翻译成符合DBMS语法规语法规定的格式。定的格式。(3)具有由用户数据库、)具有由用户数据库、DBMS等构成的可供应用程序访等构成的可供应用程序访问的数据源。问的数据源。 其中,数据库驱动程序应由驱动程序管理器加载到操作其中,数据库驱动程序应由驱动程序管理器加载到操作系统中,在系统中,在Windows环境下,驱动程序是一个带
8、有入口函环境下,驱动程序是一个带有入口函数库的数库的DLL。 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.2 ODBC接口接口 7.2.2 ODBC的应用的应用通过通过ODBC访问数据库的基本步骤如下:访问数据库的基本步骤如下: 创建数据源;创建数据源; 建立一个与数据源的对话连接;建立一个与数据源的对话连接; 向数据源发出向数据源发出SQL请求;请求; 定义一个缓冲区和数据格式用于存储访问结果;定义一个缓冲区和数据格式用于存储访问结果; 提取结果;提取结果; 处理各种错误;处理各种错误; 向用户报告结果;向用户报告结
9、果; 关闭与数据源的连接。关闭与数据源的连接。Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.2 ODBC接口接口 7.2.3 创立并配置数据源创立并配置数据源 正常安装了正常安装了Windows操作系统之后,系统中会含有操作系统之后,系统中会含有ODBC接口管理程序。用户可通过接口管理程序。用户可通过ODBC数据源管理程序或系统函数据源管理程序或系统函数调用两种方式创建或配置数据源。数调用两种方式创建或配置数据源。 在在Windows环境下,数据源环境下,数据源DSN分为:用户分为:用户DSN、系统、系统DSN和文件和文
10、件DSN三种。三种。 用户和系统用户和系统DSN存储在存储在Windows注册表中。系统注册表中。系统DSN允允许所有用户登录到特定的服务器上访问数据库。用户许所有用户登录到特定的服务器上访问数据库。用户DSN使用适当的安全身份证明限制数据库到特定用户的连接。使用适当的安全身份证明限制数据库到特定用户的连接。 文件文件DSN从文本文件中获取表格,提供对多用户的访问,从文本文件中获取表格,提供对多用户的访问,并且通过复制并且通过复制DSN文件,可以轻易地从一个服务器转移到文件,可以轻易地从一个服务器转移到另一个服务器。另一个服务器。 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业
11、出版社,2015,ISBN:97871212603607.2 ODBC接口接口 7.2.3 创立并配置数据源创立并配置数据源 在在Web数据库设计中,一般应采用系统数据源配置。数据库设计中,一般应采用系统数据源配置。 例如配置一个例如配置一个Access数据源的过程如下:数据源的过程如下: (1) 进入控制面板,打开进入控制面板,打开ODBC数据源,打开数据源数据源,打开数据源ODBC。Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.2 ODBC接口接口 7.2.3 创立并配置数据源创立并配置数据源 (2)选择)选择“系统
12、系统DSN”选项卡,即选择系统数据源。要使系统的选项卡,即选择系统数据源。要使系统的所有应用程序都可以使用它,必须选用所有应用程序都可以使用它,必须选用“系统系统DSN”,这是,这是Web站点的需要。单击站点的需要。单击“添加添加”按钮,进入按钮,进入“创建新数据源创建新数据源”对话框。对话框。 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.2 ODBC接口接口 7.2.3 创立并配置数据源创立并配置数据源 (3)选择所使用的数据库驱动程序,如选择)选择所使用的数据库驱动程序,如选择Microsoft Access Dr
13、iver (*.mdb),单击,单击“完成完成”按钮,按钮, Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.2 ODBC接口接口 7.2.3 创立并配置数据源创立并配置数据源 (4)为该数据源命名并输入数据源名,单击)为该数据源命名并输入数据源名,单击“选择选择”按钮,为该数据源指定一个已创建好的按钮,为该数据源指定一个已创建好的Access数据库数据库(*.mdb),该数据库应该是),该数据库应该是Web应用程序中即将要访应用程序中即将要访问的数据库,然后回到问的数据库,然后回到 “创建新数据源创建新数据源”对话框。单
14、击对话框。单击“确定确定”按钮,直到关闭按钮,直到关闭ODBC管理器,此时就完成管理器,此时就完成了一个数据源的创建过程。了一个数据源的创建过程。 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.3 数据库语言数据库语言SQL 7.3.1 SQL概述概述 SQL(Structured Query Language)是一个)是一个被广泛采用、适用于关系数据库访问的数据库语被广泛采用、适用于关系数据库访问的数据库语言工业标准。言工业标准。 它包括数据定义、数据操纵、数据查询和数据它包括数据定义、数据操纵、数据查询和数据控制等语
15、句标准。控制等语句标准。 目前所有主流的目前所有主流的DBMS软件商均提供对软件商均提供对SQL的的支持。支持。 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.3 数据库语言数据库语言SQL 7.3.1 SQL概述概述SQL具有以下具有以下4项功能:项功能:(1)数据定义。定义数据模式。)数据定义。定义数据模式。(2)数据查询。从数据库中检索数据。)数据查询。从数据库中检索数据。(3)数据操纵。对数据库数据进行增加、删除、)数据操纵。对数据库数据进行增加、删除、修改等操作。修改等操作。(4)数据控制。控制对数据库用户的访
16、问权限。)数据控制。控制对数据库用户的访问权限。Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.3 数据库语言数据库语言SQL 7.3.2 主要主要SQL语句语句 查询语句查询语句SELECT SELECT是是SQL的核心语句,它功能强大,和各类的核心语句,它功能强大,和各类SQL子子句结合,可完成多种复杂的查询操作。句结合,可完成多种复杂的查询操作。 其语法格式如下:其语法格式如下:SELECT ALL | DISTINCT fields_listINTO new_tablenameFROM table_namesWHE
17、RE GROUP BYHAVINGORDER BY Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.3 数据库语言数据库语言SQL 7.3.2 主要主要SQL语句语句 查询语句查询语句SELECT ALL选择符合条件的所有记录,为语句默认值。选择符合条件的所有记录,为语句默认值。INTO 将查询结果放入指定新表中。将查询结果放入指定新表中。DISTINCT略去选择字段中包含重复数据的记录。略去选择字段中包含重复数据的记录。Fields_list用用“,”隔开的字段名列表,列出需查询的记录字段,隔开的字段名列表,列出需查询的
18、记录字段, 可用可用*代替所有字段。代替所有字段。FROMSQL子句,指定子句,指定SQL语句所涉及的表(语句所涉及的表(Table)。)。Table_namesSELECT语句所涉及的表名,用语句所涉及的表名,用“,”隔开。隔开。WHERESQL子句,指定查询结果应满足的条件。子句,指定查询结果应满足的条件。GROUP BYSQL子句,按照指定的字段将查询结果分组。子句,按照指定的字段将查询结果分组。HAVING SQL子句,指定查询结果分组后需满足的条件,只有子句,指定查询结果分组后需满足的条件,只有 满足满足HAVING条件的分组才会出现在查询结果中。条件的分组才会出现在查询结果中。OR
19、DER BYSQL子句,指定查询结果按哪些字段排序,是升序子句,指定查询结果按哪些字段排序,是升序 (ASC)还是降序()还是降序(DESC)。)。Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.3 数据库语言数据库语言SQL 7.3.2 主要主要SQL语句语句 查询语句查询语句SELECT 【例例7-1】 用最基本的用最基本的SELECT语句实现从语句实现从department表中检索出所表中检索出所有部门的相关资料。有部门的相关资料。 SELECT dept_no,dept_name,location FROM dep
20、artment该语句执行后的结果为:该语句执行后的结果为:dept_nodept_namelocation001researchDallas002accountingSeattle003marketingDallasWeb程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.3 数据库语言数据库语言SQL 7.3.2 主要主要SQL语句语句 查询语句查询语句SELECT 【例例7-2】用用WHERE子句指定查询条件,要求列出位于子句指定查询条件,要求列出位于Dallas的所有的所有部门。部门。SELECT dept_no,dept_n
21、ame FROM departmentWHERE location= Dallas语句执行后的结果如下:语句执行后的结果如下:dept_nodept_name001 search003marketingWeb程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.3 数据库语言数据库语言SQL 7.3.2 主要主要SQL语句语句 查询语句查询语句SELECT 【例例7-3】 用用INTO子句从雇员表子句从雇员表employee中将属于中将属于001部门的雇员信部门的雇员信息检索出来,并放入一个新数据库表息检索出来,并放入一个新数据库表r
22、esearchemp中,新表按中,新表按emp_name字段升序排列。字段升序排列。SELECT * INTO researchempFROM employeeWHERE dept_no= 001ORDER BY emp_name ASCWeb程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.3 数据库语言数据库语言SQL 7.3.2 主要主要SQL语句语句 插入数据语句插入数据语句INSERT INSERT可添加一个或多个记录至一个表中。可添加一个或多个记录至一个表中。 INSERT有两种语法形式:有两种语法形式:(1)INSE
23、RT INTO target IN externaldatabase (fields_list)DEFAULT VALUES|VALUES(DEFAULT|expression_list)(2)INSERT INTO target IN externaldatabase fields_listSELECT|EXECUTE Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.3 数据库语言数据库语言SQL 7.3.2 主要主要SQL语句语句 插入数据语句插入数据语句INSERT INSERT可添加一个或多个记录至一个表中。可添加
24、一个或多个记录至一个表中。 INSERT有两种语法形式:有两种语法形式:(1)INSERT INTO target IN externaldatabase (fields_list)DEFAULT VALUES|VALUES(DEFAULT|expression_list)(2)INSERT INTO target IN externaldatabase fields_listSELECT|EXECUTE target是追加记录的表(是追加记录的表(Table)或视图()或视图(View)的名称。)的名称。 externaldatabase是外部数据库的路径和名称。是外部数据库的路径和名称。
25、expression_list是要插入的字段值表达式列表,其个数应与记是要插入的字段值表达式列表,其个数应与记录的字段个数一致,若指定要插入值的字段录的字段个数一致,若指定要插入值的字段fields_list,则应与,则应与fields_list的字段个数一致。的字段个数一致。 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.3 数据库语言数据库语言SQL 7.3.2 主要主要SQL语句语句 插入数据语句插入数据语句INSERT 【例例7-4】用第(用第(1)种)种INSERT形式,将一个雇员的信息插入到雇员表形式,将一个
26、雇员的信息插入到雇员表中。中。INSERT INTO employee VALUES(255001, Ann, Jones, d3)【例例7-5】用第(用第(2)种)种INSERT形式,将从部门表形式,将从部门表department中检索中检索出的位于出的位于Dallas的部门记录插入到的部门记录插入到dallas_dept表中。表中。INSERT INTO dallas_dept(dept_no,dept_name)SELECT dept_no,dept_nameFROM departmentWHERE location=DallasWeb程序设计程序设计(第第4版版),电子工业出版社,电子
27、工业出版社,2015,ISBN:97871212603607.3 数据库语言数据库语言SQL 7.3.2 主要主要SQL语句语句 删除数据语句删除数据语句DELETE DELETE从一个或多个表中删除记录。语法格式如下:从一个或多个表中删除记录。语法格式如下:DELETE FROM table_namesWHEREWeb程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.3 数据库语言数据库语言SQL 7.3.2 主要主要SQL语句语句 删除数据语句删除数据语句DELETE 【例例7-6】删除表删除表works_on中所有经理的记录
28、。中所有经理的记录。DELETE FROM works_onWHERE job=manager【例例7-7】从数据库表中删除雇员从数据库表中删除雇员Ann的相关记录。的相关记录。DELETE FROM works_onWHERE emp_no IN(SELECT emp_no FROM employee WHERE emp_no=Ann)Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.3 数据库语言数据库语言SQL 7.3.2 主要主要SQL语句语句 更新数据语句更新数据语句UPDATE UPDATE语句用来更新表中的记录
29、。语法格式如下:语句用来更新表中的记录。语法格式如下:UPDATE table_nameSET Field_1=expression_1,Field_2=expression_2FROM table1_name|view1_name,table2_name|view2_nameWHERE Field是需要更新的字段;是需要更新的字段; Expression是要更新字段的新值表达式。是要更新字段的新值表达式。Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.3 数据库语言数据库语言SQL 7.3.2 主要主要SQL语句语句 更
30、新数据语句更新数据语句UPDATE 【例例7-8】更新更新employee表中雇员表中雇员Jhon的部门。的部门。UPDATE employee SET dept_no=d3WHERE emp_fname= Jhon【例例7-9】将雇员将雇员jones的岗位置空。的岗位置空。UPDATE works_onSET job=NULLFROM works_on,employeeWHERE emp_lname=jonesAND works_on.emp_no = empoyee.emp_no Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:9787121260
31、3607.4 ADO.NET数据库组件数据库组件 ADO.NET是是ASP平台平台ADO的改进版本,由一组的改进版本,由一组.NET框架中的类库构成,是数据源连接、提交查询和处理结框架中的类库构成,是数据源连接、提交查询和处理结果的类的集合。果的类的集合。 ADO.NET提供很多新的数据访问、数据操作、数据显提供很多新的数据访问、数据操作、数据显示的控件,通过示的控件,通过Managed Provider所提供的应用程序所提供的应用程序编程接口(编程接口(API),可以轻松地访问各种数据源,包括),可以轻松地访问各种数据源,包括OLEDB和和ODBC支持的数据,同时使对数据库的操作支持的数据,
32、同时使对数据库的操作大大简化。大大简化。 ADO.NET提供的许多功能可替代开发过程中大量的编提供的许多功能可替代开发过程中大量的编码,从而提高了开发效率。码,从而提高了开发效率。 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.4 ADO.NET数据库组件数据库组件 ADO.NET建立在建立在XML的基础上,基于的基础上,基于.NET框架。框架。在非在非Windows平台下,以往的平台下,以往的ADO记录集不能直接记录集不能直接使用,从而使协同操作能力受到限制。使用,从而使协同操作能力受到限制。 在在ADO.NET中,可
33、将数据转换成中,可将数据转换成XML格式,以便格式,以便于网络传输和异构平台的操作。于网络传输和异构平台的操作。 因此,通过因此,通过ADO.NET不仅能访问关系型数据库中不仅能访问关系型数据库中的数据,也能访问的数据,也能访问XML格式数据。格式数据。Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.4 ADO.NET数据库组件数据库组件 7.4.1 ADO.NET组件模型组件模型Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.4 ADO.NET数据库
34、组件数据库组件 7.4.1 ADO.NET组件模型组件模型ADO.NETADO.NET组件模型由两大部分组成:组件模型由两大部分组成:.NET.NET框架数据提供程序框架数据提供程序ProviderProvider和和数据集数据集DataSetDataSet。 7.4 ADO.NET数据库组件数据库组件 7.4.1 ADO.NET组件模型组件模型Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.4 ADO.NET数据库组件数据库组件 7.4.1 ADO.NET组件模型组件模型1数据提供程序数据提供程序Provider .NE
35、T数据提供程序数据提供程序Provider提供了一组连接、执行数据提供了一组连接、执行数据库访问命令的对象集库访问命令的对象集。 主要包含主要包含4个核心对象个核心对象 Connection、DataReader、Command、DataAdapter。 Connection对象提供与数据源的连接;对象提供与数据源的连接; Command对象对数据源执行数据库访问命令,用于返回、修对象对数据源执行数据库访问命令,用于返回、修改数据,执行存储过程;改数据,执行存储过程; DataReader对象用于从数据源中读取数据;对象用于从数据源中读取数据; DataAdapter提供连接提供连接DataS
36、et对象和数据源的桥梁,它使用对象和数据源的桥梁,它使用Command对象在数据源中执行对象在数据源中执行SQL命令,以便将数据加载到命令,以便将数据加载到DataSet中,并使对中,并使对DataSet中数据的更改与数据源保存一致。中数据的更改与数据源保存一致。这组对象中实现连接状态下的数据库访问。这组对象中实现连接状态下的数据库访问。Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.4 ADO.NET数据库组件数据库组件 7.4.1 ADO.NET组件模型组件模型1数据提供程序数据提供程序Provider.NET 数据提
37、供程序还包含以下对象:数据提供程序还包含以下对象: Transaction对象:用于数据访问的事务处理,可在其生存周期内提交或取对象:用于数据访问的事务处理,可在其生存周期内提交或取消对数据所做的更改;消对数据所做的更改; CommandBuilder对象:自动生成对象:自动生成DataAdapter 的命令属性或从存储过程的命令属性或从存储过程中派生参数信息,并填充中派生参数信息,并填充 Command 对象的对象的 Parameters 集合,用于指定集合,用于指定SQL参数;参数; ConnectionStringBuilder对象:提供一种用于创建和管理由对象:提供一种用于创建和管理由
38、 Connection 对象使用的连接字符串的内容的简单方法;对象使用的连接字符串的内容的简单方法; Parameter对象:定义命令和存储过程的输入、输出和返回值参数;对象:定义命令和存储过程的输入、输出和返回值参数; Exception对象:异常处理对象,在数据源中遇到错误时返回。对于在客对象:异常处理对象,在数据源中遇到错误时返回。对于在客户端遇到的错误,户端遇到的错误,.NET Framework 数据提供程序会引发一个数据提供程序会引发一个.NET Framework异常;异常; Error对象:发布数据源返回的警告或错误中的信息;对象:发布数据源返回的警告或错误中的信息; Clie
39、ntPermission对象:为对象:为 .NET Framework 数据提供程序代码访问安全数据提供程序代码访问安全属性而提供;属性而提供;Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.4 ADO.NET数据库组件数据库组件 7.4.1 ADO.NET组件模型组件模型1数据提供程序数据提供程序Provider.NET Framework 数据提供程序类型说 明.NET Framework SQL Server 的数据提供程序提供对 Microsoft SQL Server 7.0 或更高版本中数据的访问。使用 Sys
40、tem.Data.SqlClient 名称空间.NET Framework OLE DB 的数据提供程序提供对使用 OLE DB 公开的数据源中数据的访问。使用 System.Data.OleDb 名称空间.NET Framework ODBC 的数据提供程序提供对使用 ODBC 公开的数据源中数据的访问。使用 System.Data.Odbc 名称空间.NET Framework Oracle 的数据提供程序适用于 Oracle 数据源。用于 Oracle 的 .NET Framework 数据提供程序支持 Oracle 客户端软件 8.1.7 和更高版本,并使用 System.Data.O
41、racleClient 名称空间EntityClient 提供程序提供对实体数据模型 (EDM) 应用程序的数据访问。 使用 System.Data.EntityClient 名称空间。.NET Framework 数据提供程序的类型数据提供程序的类型 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.4 ADO.NET数据库组件数据库组件 7.4.1 ADO.NET组件模型组件模型2数据集数据集DataSet 数据集数据集DataSet的一组对象则用于在非数据库连接状态下,存储访的一组对象则用于在非数据库连接状态下,存储访
42、问独立于任何数据源的数据,可以是问独立于任何数据源的数据,可以是Provider对象提供的数据,也对象提供的数据,也可以是来自于可以是来自于XML的数据。的数据。 DataSet 包含一个或多个包含一个或多个 DataTable 对象的集合,这些对象的集合,这些DataTable对象由数据行和数据列以及主键、外键、约束和有关对象由数据行和数据列以及主键、外键、约束和有关 DataTable 对对象中数据的关系信息组成。象中数据的关系信息组成。 DataTable对象对应一个逻辑表,它有两个重要的属性对象对应一个逻辑表,它有两个重要的属性Rows和和Columns,对应表中的行和列,定义一系列描
43、述该列结构的属性。对应表中的行和列,定义一系列描述该列结构的属性。Constraint对象提供本地存储的数据的约束方式。对象提供本地存储的数据的约束方式。DataRelation对对象定义象定义DataSet中不同中不同DataTable对象之间的关系,并可通过对象之间的关系,并可通过DataRow对象获取。对象获取。DataView对象可用不同方式查看对象可用不同方式查看DataTable对对象中的数据。象中的数据。 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.4 ADO.NET数据库组件数据库组件 7.4.2 AD
44、O.NET的数据访问模式的数据访问模式 ADO.NET两种数据访问模式两种数据访问模式 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.4 ADO.NET数据库组件数据库组件 7.4.2 ADO.NET的数据访问模式的数据访问模式 1连接模式下的数据库访问连接模式下的数据库访问Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.4 ADO.NET数据库组件数据库组件 7.4.2 ADO.NET的数据访问模式的数据访问模式 1连接模式下的数据库访问连接模式下
45、的数据库访问基本步骤如下:基本步骤如下: 定义相应的命名空间。命名空间(定义相应的命名空间。命名空间(NameSpace)是多个对象的逻辑分组,命名)是多个对象的逻辑分组,命名空间记录了对象的名称与所在的路径,以便编译器加载这些对象。常用的命名空空间记录了对象的名称与所在的路径,以便编译器加载这些对象。常用的命名空间包括:间包括:System.Data:是:是ADO.NET的核心,包含所有数据提供程序使用的类;的核心,包含所有数据提供程序使用的类;System.Data.SQLClient:当使用:当使用Microsoft SQL Server.NET数据提供程序连接数据提供程序连接SQL S
46、erver 7.0以上版本数据库时须定义使用该命名空间;以上版本数据库时须定义使用该命名空间; 建立与数据库的连接。可以使用建立与数据库的连接。可以使用SqlConnection或或OleDbConnection对象等。对象等。SqlConnection对象管理与对象管理与SQL Server 7.0版或更高版本的连接;版或更高版本的连接;OleDbConnection对象实现基于对象实现基于OLEDB访问的任何数据源的连接。访问的任何数据源的连接。SqlConnection对象特定于对象特定于SQL Server,由于不必通过,由于不必通过OLEDB层,所以比层,所以比OleDbConnec
47、tion效率高。效率高。SqlConnection 与与SqlCommand和和SqlAdapter对象一起使用。对象一起使用。 使用使用Command对象执行对象执行SQL命令,对数据库实现数据检索、增删改等。命令,对数据库实现数据检索、增删改等。 若执行的是检索命令,则使用若执行的是检索命令,则使用DataReader对象对检索结果进行读取。对象对检索结果进行读取。关闭与数据库的连接。关闭与数据库的连接。 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.4 ADO.NET数据库组件数据库组件 7.4.2 ADO.NET
48、的数据访问模式的数据访问模式 2非连接模式下的数据库访问非连接模式下的数据库访问基本步骤如下:基本步骤如下: 定义相应的命名空间。定义相应的命名空间。 使用使用Connection对象连接数据库。对象连接数据库。 用用DataAdapter对象对象执行对数据库的访问。执行对数据库的访问。 把把DataAdapter对象访问数据库的结果数据填充到对象访问数据库的结果数据填充到DataSet(数据(数据集)对象中。集)对象中。 关闭关闭Connection对象。对象。 对对DataSet对象中执行数据需要的操作,如增删改等。对象中执行数据需要的操作,如增删改等。 如有必要,如有必要,重新重新启动启
49、动Connection对象连接数据库,对象连接数据库,使使用用DataAdapter对象将更新后的对象将更新后的DataSet回写到数据库。回写到数据库。 关闭关闭Connection对象。对象。Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.5 ADO.NET对象对象 7.5.1 Connection 对象对象 Connection对象建立与所要访问的数据源的关联关对象建立与所要访问的数据源的关联关系,它具有一组属性和方法,用于表示、维护这个关系,它具有一组属性和方法,用于表示、维护这个关联关系,打开连接后,可以用联关系
50、,打开连接后,可以用command对象等完成对对象等完成对数据库的操作。数据库的操作。 在在ADO.NET对象模型中,所有对象模型中,所有Connection类都派生类都派生自自System.Data.Common命名空间中的命名空间中的DbConnection类。类。Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.5 ADO.NET对象对象 7.5.1 Connection 对象对象 Connection对象的常用属性对象的常用属性 ConnectionString属性:设置连接数据源的一些控制信息。属性:设置连接数据源
51、的一些控制信息。State属性:指明属性:指明Connection对象所处的状态,这些状态有关闭、对象所处的状态,这些状态有关闭、打开、正在连接、正在执行命令等。打开、正在连接、正在执行命令等。ConnectionTimeout属性:设置对象建立连接等操作失败时的等属性:设置对象建立连接等操作失败时的等待时间。待时间。Database属性:已连接或将要连接的数据库名称。属性:已连接或将要连接的数据库名称。ServerVersion:返回数据源的版本:返回数据源的版本(只读只读)。Open方法:建立到数据源的物理连接。方法:建立到数据源的物理连接。CreateCommand方法:为当前连接生成方
52、法:为当前连接生成Command。BeginTransaction方法:开始该连接上的一个事务。方法:开始该连接上的一个事务。Close方法:关闭一个连接。在对方法:关闭一个连接。在对Connection对象操作结束时,对象操作结束时,使用它释放所有与之关联的系统资源。使用它释放所有与之关联的系统资源。ChangeDatabase方法:改方法:改变当前变当前连接的数据库。连接的数据库。Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.5 ADO.NET对象对象 7.5.1 Connection 对象对象 创建、打开和关闭数据
53、库连接创建、打开和关闭数据库连接 两种方式。两种方式。(1) 一种方式可以使用无参数构造函数简单地生成一个未初始一种方式可以使用无参数构造函数简单地生成一个未初始化的化的Connection对象,然后设置其对象,然后设置其ConnectionString属性,如:属性,如:SqlConnection conn = new SqlConnection(); conn.ConnectionString=Data Source=(local);Initial Catalog=student; User ID=sa; Password=12345这种方式下,先创建一个无参数的这种方式下,先创建一个无参
54、数的 SqlConnection 连接对象连接对象conn,然后设置该对象的连接字符串属性,然后设置该对象的连接字符串属性ConnectiontionString,该属性定义了连接数据库必要的控制信息,这些信息包括数据源该属性定义了连接数据库必要的控制信息,这些信息包括数据源名称、数据库用户名和用户口令。名称、数据库用户名和用户口令。Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.5 ADO.NET对象对象 7.5.1 Connection 对象对象 创建、打开和关闭数据库连接创建、打开和关闭数据库连接 两种方式。两种方式
55、。(2)另一种方式为使用带连接字符串参数的构造函数创建另一种方式为使用带连接字符串参数的构造函数创建Connection对象,如对象,如:string strConn=Data Source=(local);Initial Catalog=student; User ID=sa; Password=12345; SqlConnection conn = new SqlConnection(strConn);这种方式先定义一个连接控制字符串,然后再创建一个带有该字符串参这种方式先定义一个连接控制字符串,然后再创建一个带有该字符串参数的连接对象。数的连接对象。创建创建Connection对象后,其
56、被初始化为对象后,其被初始化为“关闭关闭”状态,必须进行打开操状态,必须进行打开操作,才能对数据源中的数据进行访问,而当所有对数据源的操作完成后,作,才能对数据源中的数据进行访问,而当所有对数据源的操作完成后,应关闭这个应关闭这个Connection对象。关闭连接是因为大部分数据源仅支持有限对象。关闭连接是因为大部分数据源仅支持有限数量的打开连接,同时打开连接也会占用系统资源。数量的打开连接,同时打开连接也会占用系统资源。打开连接对象可采用打开连接对象可采用Connection对象的对象的Open方法,而关闭数据库则使方法,而关闭数据库则使用用Close方法。方法。Web程序设计程序设计(第第
57、4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.5 用用Connection对象连接数据库对象连接数据库 7.5.1 Connection 对象对象 【例例7-10】数据库连接示例。数据库连接示例。 using System.Data;using System.Data.SqlClient;string strConn = Data Source=(local);Initial Catalog=student; ;strConn += User ID=sa; Password=12345;/定义一个连接数据库字符串,连接到student数据库,用户名
58、是sa,密码为12345SqlConnection conn = new SqlConnection(strConn);/创建SqlConnection数据库连接对象using(conn) conn.Open(); /打开数据库连接 /这里为对数据源操作的代码 conn.close(); /关闭数据库连接 Web程序设计程序设计(第第4版版),电子工业出版社,电子工业出版社,2015,ISBN:97871212603607.5 ADO.NET对象对象 7.5.2 Command 对象对象 Command对象表示一个对象表示一个SQL命令字符串并能执行这个命令串。通过命令字符串并能执行这个命令串
59、。通过Command对象可执行一句或一批对象可执行一句或一批SQL查询,也可驱动存储过程。查询,也可驱动存储过程。 Command对象的常用属性和方法如下:对象的常用属性和方法如下:Connection属性。指定与属性。指定与Command对象关联的连接对象。对象关联的连接对象。CommandText属性。定义一个可执行的命令串,可被属性。定义一个可执行的命令串,可被Execute方法方法执行。执行。Type属性。指定命令串的类型。类型包括:属性。指定命令串的类型。类型包括:Text(缺省)、(缺省)、StoreProcedure和和TableDirect。CommandTimeout属性。指
60、定属性。指定Adapter对象等待命令执行的时间,缺对象等待命令执行的时间,缺省为省为30秒。秒。Parameters属性。命令的参数集合。属性。命令的参数集合。Transaction属性。定义一个事务。属性。定义一个事务。ExecuteNonQuery方法。用于执行一个不返回结果的命令。方法。用于执行一个不返回结果的命令。ExecuteReader方法。执行方法。执行CommandText定义的命令,并获取结果定义的命令,并获取结果至至DataReader对象。对象。ExecuteScalar方法。执行命令,只获取结果中的第方法。执行命令,只获取结果中的第1行第行第1列数据,列数据,例如执行
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 加工服务类合同标准文本
- 医疗 加盟合同标准文本
- 利用合同样本
- 医疗风险合同标准文本
- 劳务派遣中介合同标准文本
- 医院空调安装合同范例
- 化肥采购合同样本
- 2024年乐山高新区管委会直属事业单位招聘工作人员笔试真题
- 公司授信合同范例
- 2024年红河州个旧市医共体大屯分院工作人员招聘笔试真题
- 茶百道结业试题及答案
- 2025年濮阳职业技术学院高职单招语文2019-2024历年真题考点试卷含答案解析
- 农田水土保持的技术与治理策略研究试题及答案
- 2024农业考试重要措施试题及答案
- 甲亢病人护理讲课
- 2025年安徽滁州中盐东兴盐化股份有限公司招聘笔试参考题库含答案解析
- 2024年陕西高中学业水平合格考试化学试卷真题(含答案详解)
- 2025年金丽衢十二校高三语文第二次模拟联考试卷附答案解析
- 国际贸易实务与案例教程题库及答案
- 2025新能源考试试题及答案
- 小学思政教育主题班会
评论
0/150
提交评论