VC# 第11讲 简单数据库编程.ppt
《VC# 第11讲 简单数据库编程.ppt》由会员分享,可在线阅读,更多相关《VC# 第11讲 简单数据库编程.ppt(44页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Visual C#.NET程序设计程序设计第十一讲 简单数据库编程数据库和数据库系统数据库和数据库系统n n数据库数据库数据库数据库:按一定结构组织在一起的相关数据的集合按一定结构组织在一起的相关数据的集合n n数据库管理系统(数据库管理系统(数据库管理系统(数据库管理系统(DBMSDBMS):它是专门负责组织和它是专门负责组织和管理数据信息的软件管理数据信息的软件n n数据库应用程序数据库应用程序数据库应用程序数据库应用程序:它使我们能够获取、显示和更新它使我们能够获取、显示和更新由由DBMSDBMS存储的数据存储的数据n n 数据库的核心是数据,其具体的组织形式与数数据库的核心是数据,其具
2、体的组织形式与数据库管理系统紧密关联,而表现形式又取决于数据据库管理系统紧密关联,而表现形式又取决于数据库应用程序。库应用程序。数据库访问数据库访问的几个概念的几个概念 数据源数据源(Data Source)数据源是指本地和远程的物理数据库,或者是XML文件。数据提供者数据提供者(Data Provider)数据提供者将如何实现与物理数据库或者XML文件连接的复杂过程细节对用户隐藏,展现在用户面前的只是简单地使用该部件轻松地完成连接到一个或多个数据源、传送命令,以及将数据传送到数据集(DataSet)中。数据集数据集(DataSet)数据集对象用来表示来自一个或多个数据源并保存在内存中的表和关
3、系。ADO.NET对象模型的结构对象模型的结构 ADO.NET的对象模型由两个部分组成:数据提供程序(Data Provider,有时也叫托管提供程序)和数据集(DataSet)。数据提供程序负责与物理数据源的连接,数据集代表实际的数据。这两个部分都可以和数据使用程序通信,如Web Form窗体和Win Form窗体。1 1数据提供程序数据提供程序 .Net.Net数据提供程序提供了四个核心对象:数据提供程序提供了四个核心对象:Connect,Connect,Connect,Connect,Command,Command,Command,Command,DataReaderDataReader
4、DataReaderDataReader,DataAdapterDataAdapterDataAdapterDataAdapterADO.NET对象模型的结构对象模型的结构2.2.数据集数据集数据集数据集n n数据集(数据集(DataSetDataSet)是记录在内存中的数据,它的)是记录在内存中的数据,它的结构如图所示结构如图所示。ADO.NET数据库开发方式数据库开发方式1.1.了解了解了解了解ADO.NETADO.NET数据库开发数据库开发数据库开发数据库开发 ADO.NETADO.NET在在WindowsWindows平台下主要有平台下主要有4 4种数据库访问方式:种数据库访问方式:O
5、LEDBOLEDB模式、模式、ODBCODBC模式、模式、SQLClientSQLClient模式和模式和OracleOracle数据库模数据库模式,每一种模式都有前述式,每一种模式都有前述ADO.NETADO.NET对象模型的一种实现。对象模型的一种实现。OLEDBOLEDB模式模式 OLEDBOLEDB模式主要用于访问模式主要用于访问OLEDBOLEDB所支持的数据库。所支持的数据库。在使用在使用OLEDBOLEDB模式时需要引入的命名空间有模式时需要引入的命名空间有System.DataSystem.Data和和System.Data.OleDbSystem.Data.OleDb,对应于
6、,对应于ADO.NETADO.NET对象模型中的对象,对象模型中的对象,OLEDBOLEDB模式的对象名称分别为模式的对象名称分别为OleDbConnectionOleDbConnection对象,对象,OleDbCommandOleDbCommand对象,对象,OleDbDataAdapterOleDbDataAdapter对象和对象和OleDbDataReaderOleDbDataReader对象。对象。ADO.NET数据库开发方式数据库开发方式 ODBCODBCODBCODBC模式模式模式模式 ODBCODBC模式主要用于连接模式主要用于连接ODBCODBC所支持的数据库。所支持的数据库
7、。在使用在使用ODBCODBC模式时需要引入的命名空间有模式时需要引入的命名空间有System.DataSystem.Data和和System.Data.OdbcSystem.Data.Odbc,对应于,对应于ADO.NETADO.NET对象模型中的对象,对象模型中的对象,ODBCODBC模式的对象名称分别为模式的对象名称分别为OdbcConnectionOdbcConnection对象,对象,OdbcCommandOdbcCommand对象,对象,OdbcDataAdapterOdbcDataAdapter对象和对象和OdbcDataReaderOdbcDataReader对象。对象。SQL
8、ClientSQLClientSQLClientSQLClient模式模式模式模式 SQLClientSQLClient模式只用于访问模式只用于访问MS SQL ServerMS SQL Server数据库,是数据库,是ADO.NETADO.NET中比较特殊的组件。中比较特殊的组件。在使用在使用SQLClientSQLClient模式时需要引入的命名空间有模式时需要引入的命名空间有System.DataSystem.Data和和System.Data.SqlClientSystem.Data.SqlClient,对应于,对应于ADO.NETADO.NET对象模型中的对象分别是对象模型中的对象分
9、别是SqlConnectionSqlConnection对象、对象、SqlCommandSqlCommand对象、对象、SqlDataAdapterSqlDataAdapter对象和对象和SqlDataReaderSqlDataReader对象。对象。ADO.NET数据库开发方式数据库开发方式2.ADO.NET中两种基本的数据库开发方式中两种基本的数据库开发方式 利用利用CommandCommand对象和对象和DataReaderDataReader对象直接操作和显示数据对象直接操作和显示数据 可以使用数据命令可以使用数据命令CommandCommand对象和数据读取器对象对象和数据读取器对象
10、DataReaderDataReader以便与数据源直接通信。使用数据命令以便与数据源直接通信。使用数据命令CommandCommand对象和数据读取器对象对象和数据读取器对象DataReaderDataReader直接进行的数据库操作包直接进行的数据库操作包括:运行查询和存储过程、创建数据库对象、使用括:运行查询和存储过程、创建数据库对象、使用DDLDDL命命令直接更新和删除令直接更新和删除 使用使用DataAdapterDataAdapter对象和对象和DataSetDataSet对象对象 如果应用程序需要访问多个源中的数据如果应用程序需要访问多个源中的数据,需要与其他应用,需要与其他应用
11、程序相互操作或者可受益于保持和传输缓存结果,则使用程序相互操作或者可受益于保持和传输缓存结果,则使用DataAdapterDataAdapter适配器对象和数据集适配器对象和数据集DataSetDataSet是一个极好的选择。是一个极好的选择。3 3使用使用使用使用ADO.NETADO.NET开发数据库应用程序的一般步骤开发数据库应用程序的一般步骤开发数据库应用程序的一般步骤开发数据库应用程序的一般步骤 (1)根据使用的数据源,确定使用的.NET Framework数据提供程序;(2)建立与数据源的连接,需使用Connection对象;(3)执行对数据源的操作命令,通常是SQL命令,需使用Co
12、mmand对象;(4)使用数据集对获得的数据进行操作,需使用DataReader、DataSet等对象;(5)向用户显示数据,需使用数据控件。SQL语言语言 结构化查询语言结构化查询语言(Structure Query LanguageStructure Query Language,简称,简称SQLSQL)是基于关系模型的数据库查询语言,)是基于关系模型的数据库查询语言,它是一种非过程化的程序语言。它是一种非过程化的程序语言。如如:Select:Select 图书名称图书名称,出版时间出版时间 from from 图书图书 where where 出版社出版社=机械工业出版社机械工业出版社
13、含义为从含义为从BOOKBOOK数据库的图书表中将出版社数据库的图书表中将出版社是机械工业出版社的所有图书选出来,并列出是机械工业出版社的所有图书选出来,并列出它们的图书名称和出版时间。它们的图书名称和出版时间。SQL的基本语法的基本语法SQL的基本语法的基本语法SQL的基本语法的基本语法 SQL语言语言 1 1数据查询数据查询数据查询数据查询 格式格式:SELECT ALL|DISTINCT|TOP N|TOP N SELECT ALL|DISTINCT|TOP N|TOP N PERCENTPERCENT*|*|列名列名1 1或表达式或表达式1 AS 1 AS 列标题列标题1 ,1 ,列名
14、列名2 2或表达式或表达式2 AS 2 AS 列列标题标题22FROM FROM 表名表名1 IN 1 IN 数据库名数据库名1 1 别名别名1,1,表名表名2 IN 2 IN 数据库名数据库名2 2 别名别名2 2 WHERE WHERE 条件条件 GROUP BYGROUP BY列名列名1,1,列名列名22HAVING HAVING 条件条件 ORDER BY ORDER BY 列名列名1 ASC|DESC,1 ASC|DESC,列名列名2 ASC|DESC2 ASC|DESC例如,有语句:例如,有语句:Select Select 学号学号,姓名姓名,年级年级 from from 学生学生
15、 Where Where 专业专业=自动自动化化 其作用是其作用是“列出自动化专业的全部学生的学号、姓列出自动化专业的全部学生的学号、姓名和年级。名和年级。”又如,有语句:又如,有语句:SELECT SELECT 学生学生.学号学号,学生学生.姓名姓名,必修课成绩必修课成绩.课号课号,必修课成绩必修课成绩.成绩成绩 FROM FROM 学生学生,必修课成绩必修课成绩 WHERE WHERE 学生学生.学号学号=必修必修课成绩课成绩.学号学号其作用是其作用是“查询出所有学生的必修课的学习情况,查询出所有学生的必修课的学习情况,查询结果中包含学号、姓名、课号和成绩。查询结果中包含学号、姓名、课号和
16、成绩。”2插入记录插入记录 格式格式:INSERT INTO INSERT INTO 表名表名(字段名字段名1,1,字段名字段名2,)2,)VALUES(VALUES(表达式表达式1,1,表达式表达式2,)2,)例如,有下列语句:例如,有下列语句:INSERT INTO INSERT INTO 学生学生(学号学号,姓名姓名,专业专业)VALUES(040501,)VALUES(040501,朱朱碧春碧春,计算机软件计算机软件)其功能是向其功能是向“学生学生”表中插入一条记录,并给学号、姓名和表中插入一条记录,并给学号、姓名和专业字段赋值。专业字段赋值。3修改记录修改记录 格式格式:UPDATE
17、 UPDATE 表名表名 SET SET 字段名字段名1=1=表达式表达式1,1,字段名字段名2=2=表表达式达式2 WHERE 2 WHERE 条件条件 4删除记录删除记录 格式格式:DELETE FROM DELETE FROM 表名表名 WHERE WHERE 条件条件 例如,有以下语句:DELETE FROM 学生 WHERE 专业=经济管理其作用是从“学生”表中删除所有“经济管理”专业的学生。ADO.NET对象及其编程1Connection对象及其使用 在在ADO.NETADO.NET中,通过在连接字符串中提供必要的身份验中,通过在连接字符串中提供必要的身份验证信息,使用证信息,使用
18、ConnectionConnection对象连接到特定的数据源,该对对象连接到特定的数据源,该对象主要保存了有关数据库服务器的信息,用于打开和关闭象主要保存了有关数据库服务器的信息,用于打开和关闭与数据库的连接。与数据库的连接。属性:属性:ConnectionStringConnectionString方法:方法:Open()Open()Close()Close()ADO.NET对象及其编程 【例例14-114-1】编写一个用来测试连接的应用程序,编写一个用来测试连接的应用程序,用来建立与当前目录下的用来建立与当前目录下的Microsoft Access 2002Microsoft Acces
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VC# 第11讲 简单数据库编程 VC 11 简单 数据库 编程
限制150内