第7章数据访问课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第7章数据访问课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 访问 课件
- 资源描述:
-
1、掌握掌握Visual Studio 2008中管理数据库的方法中管理数据库的方法熟练使用数据源控件熟练使用数据源控件掌握掌握LINQ查询表达式查询表达式熟练使用熟练使用LINQ to SQL和和LINQ to XML进行数进行数据访问管理据访问管理7.1 数据访问概述数据访问概述7.2 建立建立SQL Server Express数据库数据库7.3 数据源控件数据源控件7.3.1 SqlDataSource控件控件7.3.2 XmlDataSource控件控件7.3.3 SiteMapDataSource控件控件7.3.4 LinqDataSource控件控件7.4 使用使用LINQ实现数据访
2、问实现数据访问7.4.1 LINQ查询表达式查询表达式7.4.2 LINQ to SQL概述概述7.4.3 LINQ to SQL查询数据查询数据7.4.4 使用使用LINQ to SQL管理数据管理数据7.4.5 LINQ to XML概述概述7.4.6 使用使用LINQ to XML管理管理XML文档文档7.5 小结小结ASP.NET 1.X主要使用主要使用ADO.NET访问数据。访问数据。ADO.NET提供了用于完成如数据库连接、查询提供了用于完成如数据库连接、查询数据、插入数据、更新数据和删除数据等操作数据、插入数据、更新数据和删除数据等操作的对象。的对象。Connection对象对象
3、Command对象对象DataReader对象对象DataAdapter对象对象DataSet对象对象 Connection、Command和和DataReader对象:只能读对象:只能读取数据库。如果只是想查取数据库。如果只是想查询记录的话,这种方式的询记录的话,这种方式的效率更高些。效率更高些。Connection、Command、DataAdapter和和DataSet对对象:可以对数据库进行各象:可以对数据库进行各种操作。种操作。数据源控件数据源控件封装所有获取和处理数据的功能,封装所有获取和处理数据的功能,主要包括连接数据源、使用主要包括连接数据源、使用Select、Update、D
4、elete和和Insert等等SQL语句获取和管理数据等。语句获取和管理数据等。数据绑定控件数据绑定控件主要用于以多种方式显示数据。主要用于以多种方式显示数据。结合使用数据源控件和数据绑定控件,只需要结合使用数据源控件和数据绑定控件,只需要设置相关属性,几乎不用编写任何代码即能存设置相关属性,几乎不用编写任何代码即能存取数据库。取数据库。填补了传统填补了传统.NET语言和查询语句之间的空白,语言和查询语句之间的空白,使得查询等数据访问操作完全与使得查询等数据访问操作完全与.NET语言整语言整合,实现了合,实现了通过通过.NET语言访问数据库语言访问数据库的功能。的功能。未来数据访问的趋势。未来
5、数据访问的趋势。SQL Server Express 2005是是SQL Server 2005系系列中的列中的精简版精简版,允许无偿获取并免费再分发,允许无偿获取并免费再分发,同时对系统配置的要求相对比较低,同时对系统配置的要求相对比较低,非常适合非常适合于中小型企业的开发应用于中小型企业的开发应用。SQL Server Express 2005与与ASP.NET 3.5紧密紧密集成。在安装集成。在安装Visual Studio 2008时,与时,与ASP.NET 3.5一同安装。一同安装。允许建立网站时直接在允许建立网站时直接在Visual Studio 2008的开的开发环境中创建并管理
6、数据库。发环境中创建并管理数据库。在在ASP.NET 3.5的用户认证和个性化的服务中,的用户认证和个性化的服务中,会自动创建会自动创建SQL Server Express 2005的数据库的数据库ASPNETDB.MDF,并能与网站配合,自动保,并能与网站配合,自动保存相关数据,从而简化了设计过程。存相关数据,从而简化了设计过程。利用图形管理工具利用图形管理工具SSMSE管理管理SQL Server Express数据库。数据库。利用利用Visual Studio 2008 中中“服务器资源管理器服务器资源管理器”管理管理 SQL Server Express数据库。数据库。用于实现从不同数
7、据源获取数据的功能。用于实现从不同数据源获取数据的功能。提供了统一的基本编程模型提供了统一的基本编程模型。通过数据源控件中定义的各种事件,可以实现通过数据源控件中定义的各种事件,可以实现Select、Update、Delete和和Insert等数据操作。等数据操作。提供了数据操作前后的事件。如:提供了数据操作前后的事件。如:实现数据插入操作的实现数据插入操作的Insert()方法。方法。发生在数据插入之前的发生在数据插入之前的Inserting事件。事件。发生在数据插入之后的发生在数据插入之后的Inserted事件。事件。用来访问用来访问Access、SQL Server、SQL Server
8、 Express、Oracle、ODBC数据源和数据源和OLEDB数数据源。据源。要访问带密码的要访问带密码的Access数据库,就不能使用数据库,就不能使用AccessDataSource,只能使用,只能使用SqlDataSource控控件。件。ConnectionString获取或设置连接到数据库的字符串。DataSourceMode获取或设置获取数据时所使用的数据返回模式。值DataReader表示获取只读数据;值为DataSet表示获取数据可更改。默认值为DataSet。DeleteCommand获取或设置用于删除数据的SQL语句或存储过程名。DeleteCommandType获取或设
9、置属性DeleteCommand值的类型。Text表示SQL语句;StoreProcedure表示存储过程。默认值为Text。DeleteParameters获取DeleteCommand值中出现的参数集合。DeleteQuery设置Delete命令使用的参数。EnableCaching逻辑值,true表示启用数据缓存功能,false表示不启用。默认值为false。InsertCommand获取或设置用于插入数据的SQL语句或存储过程名。InsertCommandType获取或设置属性InsertCommand值的类型。InsertParameters获取属性InsertCommand值中出现
10、的参数集合。InsertQuery设置Insert语句使用的参数。ProviderName获取或设置连接数据源的提供程序名称。SelectCommand获取或设置用于查询数据的SQL语句或存储过程名。SelectCommandType获取或设置属性SelectCommand值的类型。SelectParameters获取SelectCommand值中出现的参数集合。SelectQuery设置Select语句使用的参数。UpdateCommand获取或设置用于更新数据的SQL语句或存储过程。UpdateCommandType获取或设置UpdateCommand值的类型。UpdateParamete
11、rs获取属性UpdateCommand值中出现的参数集合。UpdateQuery设置Update命令使用的参数。使用使用SqlDataSource连接数据源不需要编写代连接数据源不需要编写代码,只需按码,只需按“配置数据源配置数据源”向导逐步设置就可以向导逐步设置就可以了。了。下拉列表框会列出存储在下拉列表框会列出存储在App_Data文件文件夹中的数据库名和存储在夹中的数据库名和存储在web.config文件文件的的配置节配置节中的数据中的数据连接名。连接名。连接字符串包括数据库信息和身份验证连接字符串包括数据库信息和身份验证信息。信息。Data Source=.SQLEXPRESS;Att
12、achDbFilename=|DataDirectory|MyPetShop.mdf;Integrated Security=True;User Instance=True SQL Server数据库的身份验证数据库的身份验证:Windows验证、验证、SQL Server验证和混合验证。验证和混合验证。Windows验证验证使用使用Windows用户帐号连接用户帐号连接SQL Server,常用于局域网络常用于局域网络。SQL Server验证验证使用使用SQL Server的注册帐号连的注册帐号连接接SQL Server,常用于常用于Internet环境环境。Data Source=.SQ
13、LEXPRESS;AttachDbFilename=E:BookMyPetShop.mdf;Persist Security Info=True;User ID=saa;Password=sdf1;Connect Timeout=30;User Instance=False混合验证的连接字符串可选择混合验证的连接字符串可选择Windows验证格验证格式或式或SQL Server验证格式。验证格式。在在SqlDataSource控件的定义中控件的定义中 在在web.config的的配置节中配置节中 SqlDataSource控件的定义控件的定义asp:SqlDataSource ID=SqlDa
14、taSource1 runat=server ConnectionString=SelectCommand=SELECT DISTINCT CategoryId FROM Product 利用命令行工具利用命令行工具aspnet_regiis.exe为连接字符串为连接字符串加密。加密。aspnet_regiis pef connectionStrings E:website 利用命令行工具利用命令行工具aspnet_regiis.exe为连接字符串为连接字符串解密。解密。aspnet_regiis pdf connectionStrings E:website 连接数据库失败是程序开发中常有的
15、情形。造连接数据库失败是程序开发中常有的情形。造成成失败的原因失败的原因有连接字符串设置错误、数据库有连接字符串设置错误、数据库服务未启动、网络问题等。此时,需要给用户服务未启动、网络问题等。此时,需要给用户适当的出错提示信息。适当的出错提示信息。当数据库连接正常时在下拉列表中填充当数据库连接正常时在下拉列表中填充“Category”表的表的“Name”字段信息。当数据库字段信息。当数据库连接失败时返回出错信息。连接失败时返回出错信息。源程序:源程序:FailtureConn.aspx程序说明:当程序说明:当SqlDataSource控件执行控件执行Select命命令之后,将触发令之后,将触发
16、Selected事件,并且抛出任何事件,并且抛出任何异常信息。因此,数据库连接失败的处理可在异常信息。因此,数据库连接失败的处理可在Selected事件中捕获异常,再显示出错信息并事件中捕获异常,再显示出错信息并通知通知SqlDataSource控件已处理异常。控件已处理异常。在在Select、Insert、Delete、Update等数据操作等数据操作时允许使用参数。时允许使用参数。ControlParameter:实现控件属性值与参数的绑定。:实现控件属性值与参数的绑定。FormParameter:实现表单域的值与参数的绑定。:实现表单域的值与参数的绑定。CookieParameter:实
17、现:实现Cookie对象值与参数的绑定。对象值与参数的绑定。ProfileParameter:实现用户配置属性值与参数的绑定。:实现用户配置属性值与参数的绑定。QueryStringParameter:实现:实现QueryString对象值与参数对象值与参数的绑定。的绑定。SessionParameter:实现:实现Session对象与参数的绑定。对象与参数的绑定。当选择宠物类别后,列表框中将显示该类别的当选择宠物类别后,列表框中将显示该类别的所有产品。所有产品。源程序:源程序:SqlDSParameters.aspx 程序说明:本示例不用编写任何代码,所有操程序说明:本示例不用编写任何代码,
18、所有操作都通过属性设置实现。作都通过属性设置实现。在数据源配置时除可设定在数据源配置时除可设定Select语句外,还可语句外,还可组合组合Insert、Update和和Delete语句。语句。设定的设定的Select语句在网页有数据显示时即被执语句在网页有数据显示时即被执行,不需要调用相应的方法执行,而设定的行,不需要调用相应的方法执行,而设定的Insert、Update和和Delete语句必须调用相应的语句必须调用相应的方法才能被执行。方法才能被执行。例如,例如,Insert语句的执行应语句的执行应调用调用SqlDataSource控件的控件的Insert()方法。方法。当输入当输入“分类名
19、分类名”、“描述描述”等信息,单击等信息,单击“插入插入并显示并显示”后,将把数据信息插入到后,将把数据信息插入到Category表,表,然后在然后在GridView中显示表中所有数据。中显示表中所有数据。源程序:源程序:SqlDSInsert.aspx 程序说明:单击按钮时将调用程序说明:单击按钮时将调用Insert()方法,从方法,从而执行而执行SqlDataSource中设置的中设置的Insert语句,实语句,实现数据插入功能。然后再执行现数据插入功能。然后再执行SqlDataSource中设置的中设置的Select语句,返回语句,返回 Category表中所有表中所有数据并在数据并在G
20、ridView中显示出来。中显示出来。使用存储过程,可以将数据库操作的各种使用存储过程,可以将数据库操作的各种SQL命令经过编译后直接存放到数据库端。命令经过编译后直接存放到数据库端。各个应各个应用程序只需利用简单的调用语句即可调用存储用程序只需利用简单的调用语句即可调用存储过程完成对数据库的各种操作。这样就大大提过程完成对数据库的各种操作。这样就大大提高了代码的重用度。高了代码的重用度。存储过程要求实现的功能是向存储过程要求实现的功能是向Category表中插表中插入记录和查询所有记录。入记录和查询所有记录。操作流程:在操作流程:在“服务器资源管理器服务器资源管理器”窗口中展开窗口中展开相应
21、的数据库,右击相应的数据库,右击“存储过程存储过程”“添加新存添加新存储过程储过程”。源程序:源程序:CategoryInsert存储过程存储过程 本实例实现的功能与实例本实例实现的功能与实例7-3相同,区别是单相同,区别是单击击“插入并显示插入并显示”按钮后将调用存储过程按钮后将调用存储过程CategoryInsert向向Category表插入记录,再将表插入记录,再将Category表中所有记录信息通过表中所有记录信息通过GridView呈现呈现出来。出来。源程序:源程序:SqlDSProcedure.aspx 访问的是访问的是“层次化数据层次化数据”,常用于连接和访问,常用于连接和访问
22、XML数据源中的数据。数据源中的数据。属性属性DataFile:用于设置要绑定的:用于设置要绑定的XML文件名。文件名。对于能显示层次化数据的控件有对于能显示层次化数据的控件有TreeView、Menu等,只需设置这些控件的属性等,只需设置这些控件的属性DataSourceID值,即能显示值,即能显示XMLDataSource中的中的XML数据。数据。对对GridView控件,需要利用控件,需要利用.xsl文件将文件将XML文文件转化为件转化为“表格化数据表格化数据”后才能正常显示。后才能正常显示。源程序:源程序:books.xml源程序:源程序:books.xsl源程序:源程序:XmlDSG
23、ridView.aspx 用于访问用于访问 XML格式的网站地图文件格式的网站地图文件Web.sitemap,再将数据源绑定到,再将数据源绑定到TreeView、SiteMapPath或或Menu等控件即能显示网站地图等控件即能显示网站地图文件内容。文件内容。当与当与SiteMapPath控件绑定时,不需要声明控件绑定时,不需要声明SiteMapDataSource,系统会自动实现绑定。,系统会自动实现绑定。不需要设置连接数据源的属性。不需要设置连接数据源的属性。利用利用LINQ访问数据库。访问数据库。在使用时,首先要建在使用时,首先要建立数据源的上下文对象,立数据源的上下文对象,该对象包含要
24、查询的该对象包含要查询的数据的基对象,实质是一个数据的基对象,实质是一个LINQ to SQL类文类文件。件。表表Category的数据显示利用了的数据显示利用了LinqDataSource和和GridView。源程序:源程序:LinqDSGridView.aspx LINQ集成于集成于.NET Framework 3.5中,提供了中,提供了统一的语法实现多种数据源的查询和管理。它统一的语法实现多种数据源的查询和管理。它与与.NET支持的编程语言整合为一体,使得数支持的编程语言整合为一体,使得数据的查询和管理直接被嵌入在编程语言的代码据的查询和管理直接被嵌入在编程语言的代码中中,这样,就能充分
25、利用,这样,就能充分利用Visual Studio 2008的的智能提示功能,并且编译器也能检查查询表达智能提示功能,并且编译器也能检查查询表达式中的语法错误。式中的语法错误。LINQ to Object:用于处理:用于处理Array和和List等集合等集合类型数据;类型数据;LINQ to SQL:用于处理:用于处理SQL Server等关系数等关系数据库类型数据;据库类型数据;LINQ to XML:用于处理:用于处理XML类型数据;类型数据;LINQ to DataSet:用于处理:用于处理DataSet类型数据。类型数据。实现了如何访问操作数据,常使用关键字为实现了如何访问操作数据,常
展开阅读全文