
aspnetweb程序设计第六章数据库访问技术.ppt
94页第第6章章数据库访问技术数据库访问技术知识点知识点 q理解数据绑定技术q掌握使用DataSet对象q熟悉ADO.NET数据库操作方法q掌握DataGrid等数据显示控件的方法和技巧 6.1数据库操作概述数据库操作概述 l数据访问其实就是在应用程序中获取数据库或数据访问其实就是在应用程序中获取数据库或者其他存储设备上的数据,并且可以对数据库者其他存储设备上的数据,并且可以对数据库或者其他存储设备上的数据进行基本的数据操或者其他存储设备上的数据进行基本的数据操作,包括查询数据、添加数据、修改数据、删作,包括查询数据、添加数据、修改数据、删除数据等除数据等数据库访问模型图6.1数据库操作概述数据库操作概述l数据访问不单指访问数据库中的数据,它还包数据访问不单指访问数据库中的数据,它还包括访问其他格式的数据,括访问其他格式的数据,.NET.NET(请确认?)提(请确认?)提供供System.DataSystem.Data命名空间,该命名空间提供了访命名空间,该命名空间提供了访问数据库中数据的类和对象问数据库中数据的类和对象System.DataSystem.Data命名命名空间主要由空间主要由ADO.NETADO.NET结构的类组成,该类提供使结构的类组成,该类提供使开发者能够生成有效地管理来自多个数据源的开发者能够生成有效地管理来自多个数据源的数据的组件。
数据的组件lADO.NETADO.NET设计思想是从数据库中读取数据到内存设计思想是从数据库中读取数据到内存中,构成内存中的一个数据库,中,构成内存中的一个数据库,6.1数据库操作概述数据库操作概述ADO.NET 1.0版本主要提供两种数据提供程序,分别是版本主要提供两种数据提供程序,分别是SQL Server.NET和和OLE DB.NET数据提供程序而数据提供程序而ADO.NET1.1提供提供4种数据提供程序,除了种数据提供程序,除了1.0提供的两提供的两种之外,还包括种之外,还包括OracleDB.NET数据提供程序和数据提供程序和ODBC.NET数据提供程序数据提供程序数据提供程序数据提供程序访问对访问对象象SQL Server.NET主要主要访问访问SQL Server2000及以上版本及以上版本OLE DB.NET主要主要访问访问SQL Server 7.0及以下和其他数据及以下和其他数据库库OracleDB.NET主要主要访问访问Oracle 8i、Oracle 9i及以上的版本及以上的版本ODBC.NET主要主要访问访问ODBC数据源数据源对对象象属性属性Connection对对象象建立与特定数据源的建立与特定数据源的连连接接Command对对象象对对数据源数据源执执行命令,公开行命令,公开Parameters,并且可以,并且可以从从Connection在在Transaction的范的范围围内内执执行行DataReader对对象象从数据源中从数据源中读读取只取只进进且只且只读读的数据流的数据流DataAdapter对对象象用数据源填充用数据源填充DataSet并解析更新,并解析更新,DataAdapter是数据提供程序与是数据提供程序与DataSet的接口的接口.NET数据提供程序的核心对象数据提供程序的核心对象 6.2结构化查询语句结构化查询语句SQL SELECT查询查询SELECT查询是查询是SQL语言的核心,在数据库应用中,查询是最常语言的核心,在数据库应用中,查询是最常用的操作,同时还是数据库的其他操作的基础。
用的操作,同时还是数据库的其他操作的基础1、SELECT语法语法 SELECTDISTINCT别名别名.字段名或表达式字段名或表达式AS 列标题列标题 FROM table_sourceWHERE search_conditionGROUP BY group_by_expressionORDER BY order_expressionASC/DESC6.2结构化查询语句结构化查询语句SQL常用聚合函数常用聚合函数对表进行检索时,经常需要将结果进行汇总或计算例如:统计总销售额,对表进行检索时,经常需要将结果进行汇总或计算例如:统计总销售额,统计平均年龄等聚合函数用于计算机表中数据,返回单个计算机结果统计平均年龄等聚合函数用于计算机表中数据,返回单个计算机结果常用的聚合函数有:常用的聚合函数有:AVG:求组中值的平均值求组中值的平均值COUNT:求组中项数,返回:求组中项数,返回int类型的整数类型的整数MAX:求最大值:求最大值 MIN:求最小值求最小值SUM:返回表达式中所有值的和返回表达式中所有值的和VAR:返回给定表达式中所有值的统计方差:返回给定表达式中所有值的统计方差 例例6-16.2结构化查询语句结构化查询语句SQLl数据更新数据更新 插入数据语句(插入数据语句(INSERT):INSERT语句主要语句主要用于向数据库的表或视图中插入一条新记录。
用于向数据库的表或视图中插入一条新记录语法为:语法为:INSERT INTO 表名(字段列表)表名(字段列表)VALUES(字段字段值列表值列表)6.2结构化查询语句结构化查询语句SQLl删除数据语句(删除数据语句(DELETEDELETE)DELETEDELETE用来从一个或多个表中删除记录语法用来从一个或多个表中删除记录语法为:为:DELETE FROM DELETE FROM 表名表名WHEREWHERE删除条件删除条件 6.2结构化查询语句结构化查询语句SQLl更新数据语句(更新数据语句(UPDATEUPDATE)UPDATEUPDATE用于更新满足条件的某个记录的一个或用于更新满足条件的某个记录的一个或多个字段语法为:多个字段语法为:UPDATE UPDATE 表名表名 SET SET 字段名字段名1=1=新字段值,新字段值,字段名字段名1=1=新字段值新字段值 WHERE WHERE 更新条件更新条件 6.3 Connection对象对象 lOLEDbConnectionOLEDbConnection的使用的使用 使用使用ADO.NETADO.NET连接到连接到OLE DBOLE DB数据源上需要使用数据源上需要使用OLEDBConnectionOLEDBConnection对象。
建立一个对象建立一个ConnectionConnection对对象的代码是:象的代码是:OleDbConnectionOleDbConnection myconnectionmyconnection=new =new OleDbConnection(ConnectionStringOleDbConnection(ConnectionString)OLEDbConnectionOLEDbConnection的使用的使用lConnectionString的主要属性的主要属性ProviderProvider属性:数据源的程序提供者例如:属性:数据源的程序提供者例如:AccessAccess的的提供者是提供者是Microsoft.Jet.OLEMicrosoft.Jet.OLE DB.4.0 DB.4.0Data SourceData Source属性:数据库的存放位置属性:数据库的存放位置User IDUser ID属性:数据库登录的用户名属性:数据库登录的用户名PwdPwd属性:属性:用来设置登录数据库的密码用来设置登录数据库的密码ConnectionTimeoutConnectionTimeout属性:获取在尝试建立连接时终止属性:获取在尝试建立连接时终止尝试并生成错误之前所等待的时间(以秒为单位),默尝试并生成错误之前所等待的时间(以秒为单位),默认值为认值为1515秒。
值为秒值为0 0表示没有对等待时间进行设置,而表示没有对等待时间进行设置,而不是表示没有等待时间不是表示没有等待时间ModeMode属性:在设定连接数据库属性:在设定连接数据库前,连接的更改数据许可连接的更改数据许可权(高级选项)权(高级选项)例如一个连接例如一个连接Access数据库的连接语句代码如下:数据库的连接语句代码如下:Provider=Microsoft.Jet.OLEDB.4.0;DataSource=c:Database1.mdb除了除了ConnectionString属性之外,属性之外,OLEDbConnection还有还有open和和close这两个常用方法,这两个常用方法,分别表示数据库的打开和关闭以下是一个如何创建和分别表示数据库的打开和关闭以下是一个如何创建和打开与打开与OLE DB数据源的连接:数据源的连接:OleDbconnection myconn=new Oledbconnection(“Provider=Microsoft.Jet.OLE DB.4.0;DataSource=c:database1.mdb”);Myconn.open();6.3 Connection对象对象l除了编写代码外,在除了编写代码外,在Visual Studio.NET提供了提供了可视化的操作数据库连接。
可视化的操作数据库连接1)打开)打开Visual Studio.NET,切换工具箱到,切换工具箱到“数据数据”选选项卡项卡,选择,选择OLEDbConnection,并拖放到,并拖放到WebForm1窗体上,默认对象名字为窗体上,默认对象名字为OLEDbConnection12)选中)选中OLEDbConnection1,在其属性页上单击,在其属性页上单击ConnectionString右边的空白,在空白处将出现一个右边的空白,在空白处将出现一个下拉箭头,选择下拉箭头,选择“”出现出现“数据连接属性数据连接属性”对话框6.3 Connection对象对象(3)默认情况下,数据连接显示的界面是)默认情况下,数据连接显示的界面是SQL数据库连数据库连接,由于此处连接的是接,由于此处连接的是Access数据库,所以首先需要数据库,所以首先需要在在“提供程序提供程序”选项卡中,选择选项卡中,选择Microsoft Jet 4.0 OLE DB Provider,这是,这是Access使用的驱动程序(即使用的驱动程序(即ACCESS的的Provider)(4)选择后单击)选择后单击“下一步下一步”按钮(或直接切换到按钮(或直接切换到“连接连接”选项卡),在选项卡),在“选择或输入数据库名称选择或输入数据库名称”文本框中,文本框中,选择需要连接的数据库位置和名称。
默认用户名为选择需要连接的数据库位置和名称默认用户名为Admin,密码为空,如果用其他用户名和密码登录,可,密码为空,如果用其他用户名和密码登录,可以在以在“输入数据库登录信息输入数据库登录信息”栏中输入用户名和密码栏中输入用户名和密码设置完毕后,可以单击右下部的设置完毕后,可以单击右下部的“测试连接测试连接”测试数据测试数据库是否已经正确连接库是否已经正确连接连接好数据库后,可连接好数据库后,可以在以在Visual Studio.NET里直接观里直接观看数据库中的内容看数据库中的内容打开打开“服务资源管理器服务资源管理器”(“视图视图”菜单中),双击菜单中),双击连接的表,依次展开各个分连接的表,依次展开各个分支,可以显示表、视图、存支,可以显示表、视图、存储过程等储过程等 6.3 Connection对象对象SqlConnectionSqlConnection的使用的使用SQL SQL Server.NETServer.NET数据提供程序使用数据提供程序使用SqlConnectionSqlConnection对象提供了与对象提供了与Microsoft SQL ServerMicrosoft SQL Server版本版本7.07.0或或更高版本的连接。
建立一个更高版本的连接建立一个ConnectionConnection连接的连接的代码为:代。
