数据库应用程序设计幻灯片.ppt

上传人:石*** 文档编号:48027363 上传时间:2022-10-04 格式:PPT 页数:35 大小:1.77MB
返回 下载 相关 举报
数据库应用程序设计幻灯片.ppt_第1页
第1页 / 共35页
数据库应用程序设计幻灯片.ppt_第2页
第2页 / 共35页
点击查看更多>>
资源描述

《数据库应用程序设计幻灯片.ppt》由会员分享,可在线阅读,更多相关《数据库应用程序设计幻灯片.ppt(35页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、数据库应用程序设计第1页,共35页,编辑于2022年,星期六主要内容lADO.NET概述;l.NET数据提供者l以OleDb模式、SqlClient模式建立数据库连接的方法;l通过SqlCommand、DataReader、DataAdapter、DataSet进行读、写、检索SQL Server数据库;l利用数据控件通过绑定技术显示数据库中的数据。第2页,共35页,编辑于2022年,星期六1、ADO.NET概述概述 ADO.NET是美国微软公司最新推出.NET平台中的一种数据访问技术,是专门为.NET Framework而设计的,是ADO的升级版本;ADO.NET集成了到.NET Frame

2、work中,可用于任何.NET语言,尤其是C#;ADO.NET包括所有的System.Data命名空间及其嵌套的命名空间。ADO.NET将成为构建.NET数据库应用程序的基础。ADO.NET类库中提供了用于数据连接、处理数据操作的类。System.DataSystem.Data名称空间可以通过数据提供者(provider)与数据库通信,ADO.NET对象允许通过组件连接到数据库,在数据库中进行检索、编辑、删除和插入数据,并在程序中处理数据。ADO.NET支持已连接环境和非连接环境的数据访问。第3页,共35页,编辑于2022年,星期六1.1 ADO.NET架构 ADO.NET架构的两个主要组件:

3、lData Provider(数据提供者)lDataSet(数据集)第4页,共35页,编辑于2022年,星期六1.2 ADO.NET 访问数据库的模式访问数据库的模式1.ADO.NET 访问数据库的模式主要前访问数据库的模式主要前3种:种:OleDb模式模式:主要用于访问OLEDB支持的数据库,如Access或SQL Server6.x或更早版本)需在命名空间区域添加System.Data.OleDbSystem.Data.OleDb命名空间;OdbcOdbc模式模式:主要用于ODBC所支持的数据库,一般在Windows平台下存在的数据库都可以通过建立系统DSN来实现对数据库的调用,需在命名空

4、间区域添加System.Data.OdbcSystem.Data.Odbc命名空间;SqlClientSqlClient模式模式:对MS SQL Server的访问更高效,需在命名空间区域添加System.Data.SqlClientSystem.Data.SqlClient命名空间;OracleOracle模式模式:对Oracle数据库专用的访问。第5页,共35页,编辑于2022年,星期六1.2.NET Framework数据提供程序数据提供程序 .NET Data Provider核心类核心类.NET Framework数据提供程序包括四个核心类,用于实现对数据库的数据处理。(1)Conn

5、ection(1)Connection对象对象数据库应用程序和数据库进行交互要在建立数据库连接的基础上进行。Connection对象成为连接对象,提供了对数据存储中正在运行的事务(Transaction)的访问技术。(2)Command(2)Command对象对象Command对象用于执行数据库的命令操作,命令操作包括检索(Select)、插入(Insert)、删除(Delete)以及更新(Update)操作。(3)DataAdapter(3)DataAdapter对象对象DataAdapter(数据适配器)对象在DataSet对象和数据源之间架起了一座“桥梁”。DataAdapter可以用数

6、据源填充DataSet并解析更新。(4)DataReader(4)DataReader对象对象数据流提供了高性能的、前向的数据存取机制。通过DataReader可以轻松而高效地访问数据流。DataReader对象用于从数据库中读取由SELECT命令返回的只读的数据流,在这个过程中一直保持与数据库的连接。第6页,共35页,编辑于2022年,星期六1.3 DataSet数据集数据集 ADO.NET的一个比较突出的特点是支持离线访问,即在非连接环境下对数据进行处理,DataSet是支持离线访问的关键对象,它将数据存储在缓存中。DataSet对象不关心数据源的类型,它将信息以表的形式存放。DataSe

7、t对象是非连接存储和处理关系的基础。第7页,共35页,编辑于2022年,星期六1.4 ADO.NET的设计目标 简单地访问关系数据简单地访问关系数据 l可扩展性可扩展性 ADO.NET具有良好的可扩展性 它为.NET数据提供者插件提供了框架,这些提供者可用于从任何数据源读写数据 l支持多层应用程序支持多层应用程序 ADO.NET使用开放的XML标准格式在层之间通信,允许数据通过Internet防火墙来传递,并允许以非Microsoft技术实现一层或多层 l统一统一XML和关系数据访问和关系数据访问 XML文档具有分层的数据结构。.NET技术是以XML为基础构建的,ADO.NET可以扩展.NET

8、的用法,沟通行、列和XML文档中的关系数据 第8页,共35页,编辑于2022年,星期六2、ADO.NET对象 ADO.NET类之间的关系 第9页,共35页,编辑于2022年,星期六提供者对象 提供者对象就是指在每一个.NET数据提供者中定义的对象,其名称前带有特定提供者的名称 l连接对象 l命令对象 lCommandBuilder对象 lDataReader对象lDataAdapter对象 第10页,共35页,编辑于2022年,星期六2.1 Connection对象对象 在C#.NET中,通过Connection对象实现数据连接,并且在使用过程中,根据不同的数据库的类型使用不同的Connect

9、ion控件。在ADO.NET Connection 类中有两个子类:一个是SqlConnection;另一个是OleDbConnection。第11页,共35页,编辑于2022年,星期六2.1 Connection对象对象 1.Connection对象常用属性有:lConnectionStringConnectionString属性属性:用来指定要连接的数据源。在ConnectionString属性中,需要使用很多参数。如:Data Source用来指明数据源;Initial Catalog用来指明数据库;Integrated Security用来指明集成安全等。lConnectionTime

10、outConnectionTimeout属性属性:获取在尝试建立连接时终止尝试并生成错误之前所等待的时间。返回结果:等待连接打开的时间(以秒为单位)。默认值为 15 秒。lDatabaseDatabase属性属性:获取当前数据库或连接打开后要使用的数据库的名称。返回结果:当前数据库的名称或连接打开后要使用的数据库的名称。默认值为空字符串。lDataSourceDataSource属性属性:获取要连接的数据源实例的名称。第12页,共35页,编辑于2022年,星期六2.1 Connection对象对象 2.Connection对象常用方法对象常用方法Connection对象最常用的方法有Open和

11、Close方法。lOpenOpen()方法()方法:该方法用于打开由ConnectionString属性指定的数据源连接。lCloseClose方法()方法():该方法用于断开由ConnectionString属性指定的数据源连接。第13页,共35页,编辑于2022年,星期六2.1 Connection对象对象 3.Connection对象的创建对象的创建 常用的连接数据库的格式:1 1)采用)采用Sql ServerSql Server身份验证身份验证 string constring=“server=计算机名;uid=用户名;pwd=密码;database=数据库名称;SqlConnect

12、ion connection=new SqlConnection(constring);2 2)集成的)集成的WindowsWindows身份验证语法身份验证语法String constring=server=计算机名;database=数据库名称;integrated security=SSPI;SqlConnection connection=new SqlConnection(constring);第14页,共35页,编辑于2022年,星期六OleDbConnection对象的创建方法和SqlConnection对象的创建方法类似第15页,共35页,编辑于2022年,星期六2.2 Com

13、mand对象对象 通过编程的方法创建一个Command对象:SqlCommand command=new SqlCommand();或OleDbCommand command=new OleDbCommand();第16页,共35页,编辑于2022年,星期六2.2用控件实现数据库的连接1.添加控件若连接对象不在工具箱,则添加方法:工具 选择工具箱项 .NET Framework组件 选择SqlConnection控件和SqlCommand控件添加;2.设置SqlConnection控件的ConnectionString属性;设置SqlCommand控件的Connection属性为以上的SqlC

14、onnection控件;3.OleDbConnection控件和OleDbCommand控件的用法同SqlConnection控件和SqlCommand控件。第17页,共35页,编辑于2022年,星期六2.3 DataAdapter对象对象 DataAdapter对象是ADO.NET新增加。在ADO.NET DataAdapter类中有两个子类:一个是SqlDataAdapter类;另一个是OleDbDataAdapter类。DataAdapter对象包含有SelectCommand、InsertCommand、UpdateCommand和DelectCommand四个属性,用来定义处理数据存

15、储中数据的命令,并且每个命令都是对Command对象的一个引用,可以共享同一个数据源。第18页,共35页,编辑于2022年,星期六2.3 DataAdapter对象对象 通过编程的方法创建一个DataAdapter对象:SqlDataAdapter dataAdapter=new SqlDataAdapter();或OleDbDataAdapter dataAdapter=new OleDbDataAdapter();。第19页,共35页,编辑于2022年,星期六2.4 DataReader对象对象 DataReader对象用于对数据库的操作。在ADO.NET DataReader类中有两个子

16、类:一个是SqlDataReader类;另一个是OleDbDataReader类。通过编程的方法创建一个DataReader对象:SqlDataReader reader=command.ExecuteReader();或OleDbDataReader reader=command.ExecuteReader();第20页,共35页,编辑于2022年,星期六2.4 DataReader对象对象例在窗体上放置一个ListBox和一个Button;先添加sqlConnection控件和sqlCommand控件,并设置好属性。Button的单击事件代码为:第21页,共35页,编辑于2022年,星期六

17、2.4 DataReader对象对象 sqlConnection1.Open();SqlDataReader reader=sqlCommand1.ExecuteReader();listBox1.ColumnWidth=256;while(reader.Read()listBox1.Items.Add(readersno.ToString();/或者listBox1.Items.Add(reader.GetString(0);listBox1.Items.Add(readersname.ToString();listBox1.Items.Add(readersbirthday.ToStrin

18、g();listBox1.Items.Add(readersdept.ToString();listBox1.Items.Add(readerspeciality.ToString();sqlConnection1.Close();第22页,共35页,编辑于2022年,星期六2.4 DataReader对象对象如不用控件,用代码连接:string constring=server=(local);database=student;uid=sa;pwd=sa;SqlConnection connection1=new SqlConnection(constring);connection1.Op

19、en();string commandStr=Select*From stuinf;SqlCommand sqlcommd=new SqlCommand(commandStr);sqlcommd.Connection=connection1;SqlDataReader reader=sqlcommd.ExecuteReader();/后面的同上第23页,共35页,编辑于2022年,星期六2.4 DataReader对象对象 listBox1.ColumnWidth=256;while(reader.Read()listBox1.Items.Add(readersno.ToString();/或

20、者listBox1.Items.Add(reader.GetString(0);listBox1.Items.Add(readersname.ToString();listBox1.Items.Add(readersbirthday.ToString();listBox1.Items.Add(readersdept.ToString();listBox1.Items.Add(readerspeciality.ToString();sqlConnection1.Close();第24页,共35页,编辑于2022年,星期六2.4 数据集对象 数据集对象位于System.Data命名空间中,用于定义

21、ADO.NET的断开的、客户端的对象,包括DataSet、DataTable、DataRow、DataColumn和DataRelation等。lDataSet是数据集对象中的首要对象,此对象表示一组相关表;lDataTable对象代表DataSet中的一个表;lDataTable对象的Rows和Columns分别是DataRow和DataColumn对象,可用于访问DataTable表中的行和列;lDataRelation对象代表通过共享列而发生关系的两个表之间的关系;第25页,共35页,编辑于2022年,星期六2.4 数据集对象 DataSet对象的创建可以通过工具栏中的控件实现;通过菜单

22、“数据”|“生成数据集”来实现;或者选择DataAdapter对象,单击右上角的黑三角(智能标记),在下拉表中选择“生成数据集”,这时,会弹出“生成数据集”对话框。如图14-15所示。第26页,共35页,编辑于2022年,星期六2.4 数据集对象 填充填充DataSetDataSet对象:对象:DataSet对象是一个必须填充的容器,填充方法有多种:调用DataAdapter的Fill方法、手工填充、复制或合并其它DataSet的数据。我们这里介绍使用DataAdapter的Fill方法填充DataSet对象。第27页,共35页,编辑于2022年,星期六2.4 数据集对象在窗体上添加一个标签,

23、一个DataGridView控件,使用DataAdapter的Fill方法填充DataSet对象第28页,共35页,编辑于2022年,星期六2.4 数据集对象 private void Form1_Load(object sender,EventArgs e)string constring=server=(local);database=student;uid=sa;pwd=sa;SqlConnection connection=new SqlConnection(constring);connection.Open();string sqlstr=select*from stuinf;Sq

24、lDataAdapter sqladp=new SqlDataAdapter(sqlstr,connection);DataSet dts=new DataSet();sqladp.Fill(dts,stuinf);this.dataGridView1.DataSource=dts.Tables stuinf;第29页,共35页,编辑于2022年,星期六3、使用数据库 在C#代码中使用ADO.NET的第一步就是引用System.Data命名空间,该命名空间中含有所有的ADO.NET类;接着,需要根据数据源的类型不同,而引用相应的数据提供者。lSQL Server.NET数据提供者:SQL Se

25、rver数据库,使用using指令引用System.Data.SqlClient。lOracle.NET 数据提供者:Oracle数据库,内置Oracle.NET驱动程序是最佳选择,System.Data.OracleClient;另外,Oracle本身也提供了一个.NET 数据提供者,Oracle.DataAccess.ClientlOLE DB.NET提供者:Microsoft Access,System.Data.OleDblODBC.NET数据提供者:如果数据源没有内置的或OLE DB提供者,则可以使用ODBC.NET数据提供者System.Data.Odbcl其他内置的.NET 数据

26、提供者:如果数据库有专用的内置.NET 数据提供者,就可以使用它第30页,共35页,编辑于2022年,星期六3.1创建数据库创建数据库 第31页,共35页,编辑于2022年,星期六3.2 DataGridViewDataGridView控件控件 DataGridView控件使程序员可在自定义的网格中显示数据。DataGridView控件主要属性控件主要属性:lReadOnly:该值指示用户是否可以编辑 System.Windows.Forms.DataGridView 控件的单元格。lDataSource:获取或设置 System.Windows.Forms.DataGridView 所显示数

27、据的数据源。lDataMember:获取或设置数据源中 System.Windows.Forms.DataGridView 显示其数据的列表或表的名称。lCurrentRow:获取包含当前单元格的行。第32页,共35页,编辑于2022年,星期六3.2 DataGridViewDataGridView控件控件 BindingSourceBindingSource类是和类是和DataGridViewDataGridView控件经常配合使用控件经常配合使用的一个类。的一个类。BindingSourceBindingSource类的主要属性如下:类的主要属性如下:public object DataS

28、ource get;set;:获取或设置连接器绑定到的数据源。返回结果:作为数据源的 System.Object。默认为null。public string DataMember get;set;:获取或设置连接器当前绑定到的数据源中的特定列表。返回结果:System.Windows.Forms.BindingSource.DataSource 中的列表(或行)的名称。默认值为空字符串。第33页,共35页,编辑于2022年,星期六3.3使用数据窗体向导完成数据库访问使用数据窗体向导完成数据库访问 使用数据窗体向导创建简单数据库应用程序是快捷简便的途径,用户仅需要按向导提示回答若干问题,即可生成一个具有基本数据库管理功能的应用程序。以创建一个处理数据库student的数据库应用程序了解数据库窗体向导的创建。创建数据源(在数据菜单中添加数据源)预览数据(数据集的具体数据源中预览)在应用程序中显示数据 第34页,共35页,编辑于2022年,星期六上机试题:1、创建一个数据库备用;2、用控件(SqlConnection控件Sqlcommand控件实现数据库的连接);3.用代码实现数据库的连接;4.4.创建数据集,并掌握使用DataAdapter的Fill方法填充DataSet对象;5.使用数据窗体向导完成数据库访问。第35页,共35页,编辑于2022年,星期六

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁