![理学调用SQLSerer数据库_第1页](http://file4.renrendoc.com/view12/M00/2B/13/wKhkGWaHQvaASebOAAIQPQezMrM386.jpg)
![理学调用SQLSerer数据库_第2页](http://file4.renrendoc.com/view12/M00/2B/13/wKhkGWaHQvaASebOAAIQPQezMrM3862.jpg)
![理学调用SQLSerer数据库_第3页](http://file4.renrendoc.com/view12/M00/2B/13/wKhkGWaHQvaASebOAAIQPQezMrM3863.jpg)
![理学调用SQLSerer数据库_第4页](http://file4.renrendoc.com/view12/M00/2B/13/wKhkGWaHQvaASebOAAIQPQezMrM3864.jpg)
![理学调用SQLSerer数据库_第5页](http://file4.renrendoc.com/view12/M00/2B/13/wKhkGWaHQvaASebOAAIQPQezMrM3865.jpg)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
网络数据库开发本章重点
SQLServer2005应用基础ADO.NET数据库概述数据库连接对象SqlConnection构造SQL语句对象SqlCommand处理结果对象SqlDataReader参数化对象SqlCommand存储过程网络数据库开发学习目标通过对SQLServer2005的基础部分进行讲解,希望读者掌握SQLServer2005的主要功能以及如何使用SQLServer2005与VS2005集成环境相结合,并最终实现在VS2005集成开发环境中利用SQLServer2005对数据库与数据表进行管理。网络数据库开发4.1SQLServer2005基础SQLServerManagementStudio查询分析器VS2005集成开发环境网络数据库开发4.2ADO.NET数据库概述在企业管理中,数据的管理和分析常常是现代管理的核心。因此,开发企业管理的网站时,访问、管理和分析数据总是程序的关键环节。然而在网站中访问和管理数据本身并不是一件简单的事情,这是由于两方面的因素决定的。首先,网站需要的数据可能来自不同的数据源,例如数据库、文件、XML文档等。就以数据库来说,市场上还存在着各种不同类型的数据库,它们要求的接口也各不相同。其次,由于网站工作在开放的Internet环境中,网络数据库的访问比单机数据库的访问存在着更多的矛盾,例如,数据安全、访问效率,以及多用户同时访问时可能引发的竞争等,这些都需要得到妥善的解决。网络数据库开发4.2ADO.NET数据库概述当前市场上存在着数十种不同类型的数据库,常用的有Access、SQLServer、Oracle、Informix、DB2等。这些数据库分别由不同的公司开发,技术都比较成熟。由于这些数据库采用的数据格式和接口各不相同,因此当应用程序访问它们时,就需要分别编写不同的接口,这种需要给应用程序的设计带来了麻烦。如何来解决这个矛盾呢?解决的方法就是由系统提供各种不同数据库的驱动程序,然后放在应用程序与数据库之间作为中间环节。微软公司提供的通用接口,多年来已经经历了几次大的改进:ODBC→OLEDB→ADO→ADO.NET。网络数据库开发4.2ADO.NET数据库概述网络数据库开发4.2ADO.NET数据库概述ADO.NET访问数据采用层次结构,其逻辑关系如图所示。图的顶层代表Web应用层,底层代表各种不同类型的数据源,包括不同类型的数据库、XML文档等。中间是数据层(DataLayer),下面是数据提供器(Provider)。在这个层次结构中,数据提供器起到了关键的作用。Provider相当于ADO.NET的通用接口。各种不同的数据提供器对应于不同类型的数据源。每个数据提供器(Provider)相当于一个容器,包括一组类以及相关的命令,它是数据源与数据集(DataSet)之间的桥梁。它可以根据需要将相关的数据读入内存中的数据集,也可以将数据集中的数据返回到数据源。网络数据库开发4.2ADO.NET数据库概述网络数据库开发4.2ADO.NET数据库概述在ADO.NET中数据集与数据提供器是两个非常重要而又相互关联的核心组件。数据集(DataSet)与数据提供器(Provider)的关系如图所示。图的左边代表数据集(DataSet),右边代表数据提供器(Provider)。数据集是实现ADO.NET断开式连接的核心,从数据源读取的数据先缓存到数据集中,然后被程序或控件调用。数据源可以是数据库或者XML数据。数据提供器用于建立数据源与数据集之间的联系,它能连接各种类型的数据,并能按要求将数据源中的数据提供给数据集,或者从数据集向数据源返回编辑后的数据。网络数据库开发4.2ADO.NET数据库概述网络数据库开发4.2.2ADO.NET体系结构Provider作为数据集与数据源之间的桥梁,主要任务是建立两者之间的联系。Provider相当于一个容器,包括4种核心类,其类名及其作用如下。Connection(连接)类:用于建立与数据源的连接。Command(命令)类:用于设置适合于数据源的操作命令,以便执行检索、编辑或输出参数等数据操作。DataAdapter(数据适配器)类:每张表对应一个数据适配器,用来向数据集中填入数据,或者从数据集中读出数据。DataReader(数据读取)类:用于从数据源向应用程序读取只向前的、只读的、无缓冲的字符流。网络数据库开发4.2.2ADO.NET体系结构在ASP.NET应用程序中需要通过ADO.NET访问数据需要引入命名空间。1、System.Data2、System.Data.Command3、System.Data.Oledbf4、System.Data.SqlClient5、System.Data.SqlTypes网络数据库开发4.2.3ADO.NET中的对象ADO.NET中包括各种各样的对象,但对于SQLServer数据库的一般访问和操作,主要包括3个核心对象,分别是:SqlConnection,SqlCommand,SqlDataReader1、SqlConnection对象:要实现与一个数据库的交互,实现对一个数据库的访问和操作,必修先创建和该数据库的连接。网络数据库开发4.2.3ADO.NET中的对象2、SqlCommand对象:在建立与数据库的连接之后,必须为指定的连接的数据库构造相关的SQL语句,以便实现对该数据库的相关访问和操作。通过执行SqlCommand对象中的相关方法,可以向相关数据源发送相关SQL语句命令或者调用数据库中定义的存储过程,从而实现对该数据库的相关访问和操作。网络数据库开发4.2.3ADO.NET中的对象3、SqlDataReader对象:通过SqlCommand对象向数据源发送相关SQL命令后,就可以从数据源中返回一个SqlDataReader对象的数据流,通过对该数据流的进一步操作,就可以获得数据库中的相关信息。网络数据库开发4.3数据库连接对象SqlConnection创建SqlConnection对象时,它被初始化为“关闭”状态。如果在“关闭”状态下对数据库的任何操作都会有提示出错的信息。这时要调用SqlConnection对象的Open方法打开连接。如果SqlConnection对象已经打开,则此时再调用Open方法也会提示出错信息。如果在不确定数据库是否为打开状态,可以先检查一下SqlConnection对象的状态特征,通过State属性查看。网络数据库开发4.3数据库连接对象SqlConnection在Connection类中最重要的属性是ConnectionString。该属性用来指定服务器名称、数据源信息以及其他登录信息。以MSSQL数据库的连接对象为例,类名为SqlConnection,其创建的语句是:Data
Source=服务器名\实例名;InitialCatalog=数据库名称;数据库连接方式方式一:数据库用户登录模式Data
Source=.\\SQLEXPRESS;InitialCatalog=Northwind;IntegratedSecurity=True方式二:Windows登录方式Data
Source=.\\SQLEXPRESS;InitialCatalog=Northwind;UId=sa;Password=123网络数据库开发4.3数据库连接对象SqlConnection创建一个SqlConnection对象的代码Stringstrconn;//定义一个字符串Strconn=“Data
Source=.\\SQLEXPRESS;InitialCatalog=Northwind;IntegratedSecurity=True”//字符串赋值SqlConnectionconn=newSqlConnection(strconn);案例P128网络数据库开发4.3.4SqlConnection对象的常用属性1、ConnectionString2、ConnectionTimeout3、Database和DataSource4、State网络数据库开发4.4SqlCommand对象SqlCommand对象允许执行多种不同类型的查询。通过SqlCommand对象,可以设定对打开连接的数据库进行操作,如对数据库执行查询、添加相关记录、更新和删除某条记录等操作。网络数据库开发4.4.1创建SqlCommand对象可以通过三种方式创建SqlCommand对象:方式一:使用New关键字直接创建对象的一个实例,例如,SqlCommandcmd=newSqlCommand("SELECT*FROMXS",conn);方式二:使用可用的构造函数来指定查询字符串和SqlConnection对象,例如:
SqlCommandcmd=newSqlCommand();
cmd.CommandText="SELECT*FROMXS
";
cmd.Connection=conn;方式三:调用SqlConnection类的CreaterCommand方法。网络数据库开发4.4.2对数据进行操作通过在SqlCommand对象中构造不同类型的SQL语句之后,再调用SqlCommand对象中相关方法,即可实现各种数据操作(如数据查询、添加、更新、删除等操作)。Command常用的几个方法:1、ExecuteReader();执行指定的SQL语句或存储过程名,返回值类型为DataReader2、ExecuteScalar();返回结果集中的首行首列3、ExecuteNonQuery();执行命令并返回受影响的行数网络数据库开发4.4.2对数据进行操作1、数据查询实现数据查询的SqlCommand对象代码如下:SqlCommandcmd=newSqlCommand("selectCategoryNamefromCategories",conn);SqlDataReaderrdr=cmd.ExecuteReader();网络数据库开发4.4.2对数据进行操作2、插入数据实现插入功能的SqlCommand对象代码如下:stringinsertString="insertintoCategories(CategoryName,Description)values('Miscellaneous','Whateverdoesn''tfitelsewhere')";SqlCommandcmd=newSqlCommand(insertString,conn);cmd.ExecuteNonQuery();//调用方法执行SQL语句网络数据库开发4.4.2对数据进行操作3、更新数据实现数据更新功能的SqlCommand对象代码如下:stringupdateString="updateCategoriessetCategoryName='Other'whereCategoryName='Miscellaneous'";SqlCommandcmd=newSqlCommand(updateString);cmd.Connection=conn;cmd.ExecuteNonQuery();网络数据库开发4.4.2对数据进行操作4、删除数据实现数据删除功能的SqlCommand对象代码如下:stringdeleteString="deletefromCategorieswhereCategoryName='Other'";SqlCommandcmd=newSqlCommand();cmd.CommandText=deleteString;cmd.Connection=conn;cmd.ExecuteNonQuery();网络数据库开发4.4.2对数据进行操作5、返回单一值实现返回单一值功能的SqlCommand对象代码如下:SqlCommandcmd=newSqlCommand("selectcount(*)fromCategories",conn);count=(int)cmd.ExecuteScalar();案例P136网络数据库开发4.4.3实现对象之间的关联在实际应用中,在构造各种SQL语句时,需要使用参数化的SQL语句,因此就需要使用参数化的SqlCommand对象。首先新建参数化的SqlCommand对象,再定义SqlParameter对象,实现SqlParameter对象和SqlCommand对象的关联。具体方法如下:StringinputCity=“beijing”;SqlCommandcmd=newSqlCommand(
"select*fromCustomerswherecity=@City",conn);
cmd.Parameters.Add(newSqlParameter("@city",inputCity));
rea
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度棒球场租赁与赛事宣传合作合同
- 人力资源公司合作合同
- 食堂承包合同书
- 交通运输行业智能交通出行服务平台方案
- 服装厂缝纫机设备买卖合同书
- 物流市场分析与规划作业指导书
- 买卖房屋交接合同协议书
- 人工智能系统开发与部署作业指导书
- 带担保的借款合同
- 工业互联网背景下智能仓储管理解决方案
- LS 8010-2014植物油库设计规范
- GB/T 12618-1990开口型扁圆头抽芯铆钉
- GB/T 12006.2-2009塑料聚酰胺第2部分:含水量测定
- GA/T 458-2021居民身份证质量要求
- 矿区水工环地质工作
- 中国结英文介绍
- 全口义齿的制作课件
- 人教版2023年初中道法八年级下册知识点汇总(思维导图)
- 徐金桂行政法讲义
- 2022建筑外门窗三性讲义精选ppt
- 管道公称直径壁厚对照表
评论
0/150
提交评论