数据库基础和数据访问控.ppt

上传人:牧羊曲112 文档编号:6578483 上传时间:2023-11-14 格式:PPT 页数:70 大小:806.50KB
返回 下载 相关 举报
数据库基础和数据访问控.ppt_第1页
第1页 / 共70页
数据库基础和数据访问控.ppt_第2页
第2页 / 共70页
数据库基础和数据访问控.ppt_第3页
第3页 / 共70页
数据库基础和数据访问控.ppt_第4页
第4页 / 共70页
数据库基础和数据访问控.ppt_第5页
第5页 / 共70页
点击查看更多>>
资源描述

《数据库基础和数据访问控.ppt》由会员分享,可在线阅读,更多相关《数据库基础和数据访问控.ppt(70页珍藏版)》请在三一办公上搜索。

1、第8章 数据库基础和数据访问控件,第8章 数据库基础和数据访问控件,本章讲述的主要内容8.1 使用数据库系统8.2 使用数据控件访问数据库,8.1 使用数据库系统,8.1.1 创建Microsoft SQL Sever数据库 1.新建数据库 在Visual Studio中提供了一个简单的,操作远程SQL Server数据库的“服务器资源管理器”。,8.1 使用数据库系统,8.1.1 创建Microsoft SQL Sever数据库 2.SQL Server中常用数据类型(1)char(n)(2)varchar(n)(3)text和varchar(MAX)(4)int(5)real和float(

2、6)datetime,8.1 使用数据库系统,8.1.1 创建Microsoft SQL Sever数据库 3.新建表 在“服务器资源管理器”窗口中右键单击数据库项下的“表”,在弹出的快捷菜单中执行“添加新表”命令,在Visual Studio窗口将打开图8-4所示的表结构设计界面。,8.1 使用数据库系统,8.1.1 创建Microsoft SQL Sever数据库 4.添加、修改、删除数据记录 在“服务器资源管理器”窗口中右键单击表名称,在弹出的快捷菜单中执行“显示表数据”命令,8.1 使用数据库系统,8.1.2 常用SQL语句 1.查询语句(Select)SELECT语句主要用于从数据库

3、中返回需要的数据集,其语法格式为:SELECT select_listINTO new_table_nameFROM table_listWHERE search_conditionsGROUP BY group_by_listHAVING search_conditionsORDER BY order_list ASC|DESC,8.1 使用数据库系统,例SELECT FROM学生信息SELECT 姓名 FROM学生信息WHERE姓名张三SELECT 姓名,班级,总分FROM学生信息WHERE性别女 AND 总分360SELECT*FROM 学生信息 WHERE姓名 LIKE张,8.1 使用

4、数据库系统,2 插入记录语句(Insert)使用Insert语句可以向表中插入一条记录,该语句的语法格式为:INSERT INTO 表名称(字段名)VALUE(字段值)INSERT INTO 学生成绩(编号,数学,语文,英语)VALUE(0009,89,76,92),8.1 使用数据库系统,3 修改记录语句Update使用Update语句可更新(修改)表中的数据,该语句的语法格式为:UPDATE 表名称 SET 字段名=值 WHERE 条件UPDATE 学生成绩 SET 等级=优秀 WHERE 总分300UPDATE grade SET 数学86,语文87,英语88 WHERE 学号0006,

5、8.1 使用数据库系统,4 删除记录语句Delete使用DELETE语句可以删除数据表中指定行,该语句的语法格式为:DELETE FROM 表名称 WHERE 条件DELETE FROM 学生信息 WHERE 班级网络0001,8.1 使用数据库系统,8.1.4 Microsoft Access Access数据库管理系统是Microsoft Office的一个组件,是最常用的本地数据库之一。在C#中可以方便地使用数据库对象,操作Access数据库。1.创建数据库 2.创建数据表,8.2 使用数据控件访问数据库,8.2.1 数据源控件简介,ASP.NET 2.0 引入了一系列可以改善数据访问的

6、新工具,包括几个数据源和数据绑定控件。新增种类的数据源控件可以消除 ASP.NET 1.x 中要求的大量重复性代码“数据源”控件的主要功能就是连接到数据源、建立和执行针对这些数据源的命令以及将这些命令的结果检索和绑定到页上的元素,8.2 使用数据控件访问数据库,数据源控件的类型主要有以下几种。1.AccessDataSourceAccessDataSource控件可以检索Microsoft Access数据库(文件后缀名为.mdb的文件)中的数据DataFile属性:数据库或数据源的文件所在位置,8.2 使用数据控件访问数据库,2.SqlDataSource SqlDataSource数据源控

7、件可以使用Microsoft SQL Server、ODBC、OLE DB、Oracle等基于SQL关系的数据库作为数据源。,8.2 使用数据控件访问数据库,3.ObjectDataSourceObjectDataSource控件可以使用自定义的业务对象、类或业务逻辑组件,它可以从这些对象、类或接口中检索数据。4.XmlDataSourceXmlDataSource控件使用层次结构(如XML文件等)的数据源,它的数据源往往是一个XML文件。XmlDataSource控件特别适用于分层的服务器控件,如TreeView、Menu等控件。,8.2 使用数据控件访问数据库,5.SiteMapDataS

8、ourceSiteMapDataSource控件使用站点地图(后缀名为.sitemap的文件,该文件也是一个XML格式的文件)文件作为数据源。它能够从站点地图提供程序中检索导航数据,然后将数据传递给可显示该数据的控件。,8.2 使用数据控件访问数据库,8.2.2 使用GridView数据控件,GridView控件用于配合数据源控件实现对数据库进行浏览、编辑、删除等操作。数据源控件主要包括用于连接Access数据库的AccessDataSource和用于连接SQL Server数据库的SqlDataSource。例8-11.添加数据源控件2.添加GridView控件3.设置GridView控件的

9、属性,8.2 使用数据控件访问数据库,8.2.3 使用FormView数据控件 FormView控件与前面介绍过的GridView控件相似,也是用于浏览或操作数据库的数据控件。它与GridView相比主要的不同在于显示在FormView中的数据记录是分页的,即每页只显示一条记录。,8.2 使用数据控件访问数据库,8.5.3 使用Repeater控件,Repeater控件是一个数据绑定列表控件(数据浏览控件),它允许通过为列表中显示的每一项重复指定的模板来自定义数据显示布局。Repeater控件是一个基本模板数据绑定列表,它并没有内置的布局或样式,因此必须在这个控件的模板内显式声明所有的HTML

10、布局标记、格式设置及样式标记等。Repeater控件具有更好的灵活性,但该控件没有内置的选择和编辑功能。1.Repeater控件的模板2.使用Repeater控件 例8-2,8.2 使用数据控件访问数据库,HeaderTemplate 在所有数据绑定行呈现之前呈现一次的元素。典型的用途是开始一个容器元素(如表)。注意 HeaderTemplate 项不能是数据绑定的 ItemTemplate 为数据源中的每一行都呈现一次的元素 AlternatingItemTemplate 与 ItemTemplate 元素类似,但在 Repeater 控件中隔行(交替项)呈现一次 FooterTemplat

11、e 在所有数据绑定行呈现之后呈现一次的元素,8.2 使用数据控件访问数据库,DataBinder.Eval()方法:该方法用于在运行时计算数据绑定表达式,并且根据浏览器的需要来格式化输出结果。该方法有三个参数:数据项的命名容器:命名容器是一个对象引用,该对象即是计算表达式所针对的对象。如果绑定是针对列表控件(如Repeater、DataList或DataGrid)的,则命名容器将始终是Container.DataItem。如果绑定是针对页面的,则命名容器是Page。数据字段名:绑定表格的列名(此例如“平方”等)。格式字符串,8.2 使用数据控件访问数据库,8.5.4 使用DetailsView

12、控件 DetailsView控件顾名思义是用于查看细节信息的控件,其作用主要是根据用户在父表中项的选择,在DetailView控件中显示子表的信息。1.使用DetailsView控件查看子表信息 例8-3 2.使用DetailsView控件操作SQL Server数据库 例8-4,8.6 使用ADO.NET对象,8.6.1 ADO.NET对象概述 在ADO.NET中数据集与数据提供器是两个非常重要,而又相互关联的核心组件。它们二者之间的关系如图8-45所示。,8.6 使用ADO.NET对象,ADO.NET架构图表,8.6 使用ADO.NET对象,ADO.NET的两个核心组件:DataSet对象

13、:提供数据的存储空间.NET数据提供程序.NET数据提供程序包括:Connection对象:建立与特定数据源的连接。Command对象:对数据源执行命令。DataReader对象:从数据源中读取只进且只读的数据流。DataAdapter对象:用数据源填充 DataSet 并解析更新。.NET Framework 提供两个数据程序:SQL Server.NET 数据提供程序、OLE DB.NET 数据提供程序,8.6 使用ADO.NET对象,8.6 使用ADO.NET对象,其功能基本上可以被概括为:Connection对象建立与数据库间的连接;Command对象向数据库提供者发出命令,返回的结果

14、以一种流的方式贯穿于这此连接中;结果集可以用DataReader 快速地读取,也可以通过DataAdapter 对象将数据储存到缓存中的 Dataset 对象中,让用户在数据集中访问和操作记录。,8.6 使用ADO.NET对象,DataSet,SQL Server.NET 数据提供程序,OLE DB.NET 数据提供程序,SQL Server 7.0,OLEDB 数据源,OleDbConnection,OleDbDataAdapter,SqlDataAdapter,SqlConnection,DataTable,DataTable,使用的名称空间SQL Server OLE DB,8.6 使用

15、ADO.NET对象,8.6 使用ADO.NET对象,8.6.2 数据集(DataSet)数据集相当于内存中暂时存放的数据库,它不仅可以包括多张数据表,还可以包括数据表之间的关系和约束。允许将不同类型的数据表复制到同一个数据集中,甚至还允许数据表与XML文档组合到一起协同操作。创建数据集对象的语法格式为:DataSet 对象名=new DataSet();或:DataSet 对象名=new DataSet(表名),8.6 使用ADO.NET对象,DataSet 由一组 DataTable对象组成 每个DataTable对象都包含一个DataRow对象集合和一个 DataColumn对象集合,及一

16、系列关系集合,8.6 使用ADO.NET对象,8.6.3 数据表(DataTable)数据表是用来存放数据的。一个数据集中可能包括多张数据表,每张数据表又可包括多个行和列。数据表的创建有两种方式:1)将数据夹在到数据集时,系统将自动创建一些数据表对象。2)以编程的方式创建DataTable对象,然后将该对象添加到数据集的Tables集合中。提取数据集中数据表的语法格式为:DataTable 表对象名=数据集名.数据表名;,Datatable对象的基本属性,8.6 使用ADO.NET对象,8.6.4 数据行(DataRow)数据行是给定数据表中的一条记录(表中的一行)数据行对象的方法提供了对表中

17、数据的操作(如,插入、删除、更新或查看等)。提取数据表中数据行的语法格式为:DataRow 数据行对象名=数据表对象名.Rowsn;,8.6 使用ADO.NET对象,8.6.5 数据列(DataColumn)数据表中的数据列(也称为“字段”)表示了数据表的结构。例如,可以用它确定列中的数据类型和大小,还可以对其属性进行设置。确定列中数据是否是只读的、是否是主键、是否允许空值等。还可以让列在一个初始值的基础上按自定义步长值自动增加。获取某列的值需要在数据行的基础上进行,其语法格式如下:string dc=dr字段名.ToString();或:string dc=drindex.ToString(

18、);,8.6 使用ADO.NET对象,例如:DataTable dt=ds.students;DataRow dRow=dt.Rows2;TextBox1.Text=dRow“姓名”.ToString();,8.6 使用ADO.NET对象,8.6.7 Connection(连接)Connection类提供了对数据源连接的封装。在Connection类中最重要的属性是ConnectionString(连接字符串),该属性用来指定服务名称、数据源信息及其他登录信息。,8.6 使用ADO.NET对象,SQL Server数据库的连接SqConnection con=new SqlConnection

19、(server=218.198.48.36;database=student;uid=sa;password=sa;);,8.6 使用ADO.NET对象,Access数据库的连接:OledbConnection conn=new OledbConnection(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=yourdb.mdb;”);,(2)Connection对象的基本方法,8.6 使用ADO.NET对象,OledbConnection Conn=new OledbConnection(Provider=Microsoft.Jet.OLEDB.4.

20、0;Data Source=c:user.mdb);Conn.Open();./在这里编写数据处理程序代码Conn.Close();,8.6 使用ADO.NET对象,例8-5,8.6 使用ADO.NET对象,8.6.8 Command(命令)Command对象可以在数据源中执行SQL语句或存储程序,并从数据源返回结果。Command对象常用的构造函数包括两个重要的参数,一个是要执行的SQL语句,另一个是已建立的Connection对象。,8.6 使用ADO.NET对象,常用属性Connection属性获取或设置 Command 实例使用的Connection对象 CommandText属性获取

21、或设置要对数据源执行的 SQL 语句或存储过程。OledbConnection Conn=new OledbConnection(Provider=Microsoft.Jet.OLEDB.4.0;DataSource=c:user.mdb“)OledbCommand Comm=new OledbCommand(“Select*from Emailuser”,Conn)Conn.Open(),8.6 使用ADO.NET对象,常用方法1.ExecuteNonQuery方法 该方法对Connection对象建立的连接进行不返回任何行的查询,如Updeae(更新)、Delete(删除)和Insert(

22、插入),该方法返回一个整型(Integer)数据,表示受查询影响的行数。,例8-6,8.6 使用ADO.NET对象,2.ExecuteReader方法 对Connection对象建立的连接执行一个CommandText属性中定义的命令,返回一个仅向前的、只读的数据集DataReader对象,该对象连接到数据库的结果集上,允许行检索。,例8-7,8.6 使用ADO.NET对象,OledbConnection Conn=new OledbConnection(Provider=Microsoft.Jet.OLEDB.4.0;DataSource=c:user.mdb“);OledbCommand

23、Comm=new OledbCommand(“Select*from Emailuser”,Conn);Conn.Open(),OledbDateReader dr=Comm.ExecuteReader();While dr.Read 在这里编写数据记录处理程序,8.6 使用ADO.NET对象,3.ExecuteScalar方法 该方法对Connection对象建立的连接执行CommandText属性中定义的命令,但只返回结果集中的第1行第1列的值。,例8-8,8.6 使用ADO.NET对象,8.6.9 DataAdapter(数据适配器)1.DataAdapter对象常用属性及方法,Data

24、Adapter 对象用于从数据源中检索数据并填充DataSet 中的表。DataAdapter 还会将对 DataSet 作出的更改解析回数据源,8.6 使用ADO.NET对象,该对象包含有SelectCommand(查询)、InsertCommand(插入)、UpdateCommand(更新)和DelectCommand(删除)四个属性,用来定义处理数据存储中数据的命令,并且每个命令都是对Command对象的一个引用,可以共享同一个数据源。,8.6 使用ADO.NET对象,8.6 使用ADO.NET对象,该对象常用的方法有以下几个。1)Fill方法:该方法用来执行SelectCommand,

25、用数据源的数据填充DataSet对象。2)FillSchema方法:该方法使用SelectCommand提取数据源中表的架构,并根据相应的约束在DataSet对象中创建一个空表。3)Update方法:该方法用来将DataSet对象中更改的内容更新到初始的数据库中。,8.6 使用ADO.NET对象,OledbConnection Conn=new OledbConnection(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=user.mdb“);OledbDataAdapter da=New OledbDataAdapter(“Select*from

26、Emailser”,conn);DataSet ds=New DataSet();da.fill(ds,”emailuser”);,例:DataAdapter,8.6 使用ADO.NET对象,8.6.9 DataAdapter(数据适配器)3.使用DataAdapter对象操作数据库,SQL语句可以通过以下两种方式传递给DataAdapter对象:通过DataAdapter对象的构造函数执行SQL语句。OleDbDataAdapter da=new OleDbDataAdapter(strSQL,conn);通过DataAdapter对象的4个常用属性执行SQL语句。,8.6 使用ADO.NE

27、T对象,下面的例题说明了使用DataAdapter对象的4个常用Command属性,执行SQL语句操作数据库的方法。例8-10,8.6 使用ADO.NET对象,DataReader对象所引用的行集只能进行只读、只许前向的访问,数据流,数据库,8.6.10 DataReader(数据读取器),8.6 使用ADO.NET对象,DataReader对象不提供对数据的非连接访问 若要使用 DataReader,必须调用 Command 对象的 ExecuteReader 方法,OledbDataReader dr=Comm.ExecuteReader();,8.6 使用ADO.NET对象,1.Data

28、Reader对象的常用属性及方法,FieldCount属性:该属性用来表示由DataReader得到的一行数据中的字段数。Read()方法:让记录指针指向本结果集中的下一条记录,返回值是true或false GetValue()方法:根据传入的列的索引值,返回当前记录行里指定列的值 GetValues()方法:把当前记录行里所有的数据保存到一个数组里并返回 NextResult()方法:让记录指针指向下一个结果集 Close()方法:用来关闭DataReader对象,8.6 使用ADO.NET对象,2.使用DataReader对象 例8-11,8.6 使用ADO.NET对象,8.6.11 Da

29、taView(数据视图),DataView表示用于排序、筛选、搜索、编辑和导航的DataTable的,可绑定数据的自定义视图。DataTable有一个DefaultView的属性,该属性返回表的默认DataView。DataView对象通过调用DataView类的构造函数来创建。,8.6 使用ADO.NET对象,其语法格式如下:DataView 对象名=new DataView();DataView 对象名=new DataView(table);DataView 对象名=new DataView(table,rowfilter,sort,rowState);,8.6 使用ADO.NET对象,

30、DataView对象常用属性:RowFilter:获取或设置用于筛选在 DataView中查看哪些行的表达式。RowStateFilter:获取或设置用于 DataView中的行状态筛选器。Sort:获取或设置 DataView的一个或多个排序列以及排序顺序。Table:获取或设置源 DataTable。,8.6 使用ADO.NET对象,DataView view=new DataView();view.Table=DataSet1.TablesSuppliers;view.RowFilter=City=Berlin;view.Sort=CompanyName DESC;3.使用DataVie

31、w对象 例8-12,8.6 使用ADO.NET对象,8.6.11 DataView(数据视图),3.使用DataView对象 例8-12,添加数据DataTable table=ds.Tables“emailuser“;DataRow newRow=table.NewRow();newRow“emai_luser“=“zhangsan“;newRow“password“=“123456“;table.Rows.Add(newRow)删除数据table.Rows5.Delete(),更新DataSet中的数据,修改数据DataRow selectedRows;selectedRows=table

32、.Select(“emailuser=admin);selectedRows0email_user“=John“;selectedRows0“password“=“abcdef“;,更新DataSet中的数据,CommandBuilder对象当与 DataAdapter 关联时,CommandBuilder 将自动生成 DataAdapter 的 InsertCommand、UpdateCommand 和 DeleteCommand 属性CommandBuilder对象使用SelectCommand作为基础,自动生成SQL命令DataAdapt.updata()当调用 Update 方法时,DataAdapter 将分析已作出的更改并执行相应的命令(INSERT、UPDATE 或 DELETE)。,例DataTable,更新DataSet中的数据,数据绑定,将数据存储中的信息与服务器控件关联起来的过程控件可以绑定到各种数据源上,包括从数据库中检索的表和存储在对象(Array或Hashtable)中的值,绑定方法把服务器控件的DataSource属性设置为要绑定的数据源把服务器控件的DataTextField属性设置控件中的Text属性的来源调用控件的DataBind方法,数据绑定,例DataBind,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号