C#数据库应用程序设计课件.ppt

上传人(卖家):三亚风情 文档编号:2977655 上传时间:2022-06-18 格式:PPT 页数:24 大小:831KB
下载 相关 举报
C#数据库应用程序设计课件.ppt_第1页
第1页 / 共24页
C#数据库应用程序设计课件.ppt_第2页
第2页 / 共24页
C#数据库应用程序设计课件.ppt_第3页
第3页 / 共24页
C#数据库应用程序设计课件.ppt_第4页
第4页 / 共24页
C#数据库应用程序设计课件.ppt_第5页
第5页 / 共24页
点击查看更多>>
资源描述

1、软件学院软件学院 夏克付夏克付接口是指前台程序接口是指前台程序和后台数据库的连接部分和后台数据库的连接部分。接口的概念接口的概念12主要的数据库访问接口主要的数据库访问接口ODBCODBC(Open(Open DataBaseDataBase Connectivity Connectivity,开放式,开放式数据库互连数据库互连) ):只能访问关系型数据。:只能访问关系型数据。OLE DBOLE DB(Object Linking and Embedding Object Linking and Embedding DataBaseDataBase,数据库对象的链接与嵌入):系统级,数据库对象

2、的链接与嵌入):系统级编程接口,可以访问所有类型的数据编程接口,可以访问所有类型的数据 。一、数据库访问接口ADOADO(ActiveX(ActiveX Data Objects Data Objects,ActiveXActiveX数据对象):数据对象):应用程序级编程接口,可以访问所有类型的数据。应用程序级编程接口,可以访问所有类型的数据。ADO.NETADO.NET:ADOADO的升级版本,是的升级版本,是.NET.NET平台采用的数平台采用的数据库访问接口。据库访问接口。一、数据库访问接口ADO.NETADO.NET是一些是一些.NET Framework.NET Framework类

3、库中与数据库访问类库中与数据库访问有关的类的集合有关的类的集合, ,它是一种可以使程序员快速、高效地利它是一种可以使程序员快速、高效地利用用.NET.NET开发出数据库应用程序的技术。其体系结构如下:开发出数据库应用程序的技术。其体系结构如下:ADO.NET的体系结构的体系结构1二、ADO.NET概述从从ADO.NETADO.NET的体系结构的体系结构可以可以看出,看出,ADO.NETADO.NET包括两包括两大部分:大部分:数据提供者数据提供者和和DataSetDataSet(数据集)(数据集)。2数据提供者数据提供者数据提供者数据提供者也称为也称为.NET Framework .NET F

4、ramework 数据提供数据提供程序程序,包括一系列,包括一系列用于连接到数据库、执行命令用于连接到数据库、执行命令和检索结果和检索结果等类。等类。(1 1)核心对象)核心对象二、ADO.NET概述二、ADO.NET概述对象名称对象名称功能描述功能描述ConnectionConnection数据库连接对象,建立与数据库的连接数据库连接对象,建立与数据库的连接CommandCommand命令对象,执行数据访问命令的对象命令对象,执行数据访问命令的对象DataReaderDataReader数据读取器对象,读取数据源中只读、向数据读取器对象,读取数据源中只读、向前的数据前的数据DataAdapt

5、erDataAdapter数据适配器对象,读取数据源数据填充数数据适配器对象,读取数据源数据填充数据集对象据集对象DataSetDataSet(2 2)数据提供程序种类)数据提供程序种类二、ADO.NET概述数据提供程序数据提供程序命名空间命名空间核心对象核心对象说明说明用于 SQL Server 的数据提供程序System.Data.SqlClientSqlConnectionSqlCommandSqlDataReaderSqlDataAdapter提供对 Microsoft SQL Server 7.0 或更高版本中数据的访问。用于OLE DB的数据提供程序System.Data.OleD

6、bOleDbConnectionOleDbCommandOleDbDataReaderOleDbDataAdapter提供对使用OLE DB 公开的数据源中数据的访问用于 ODBC 的数据提供程序System.Data.OdbcOdbcConnectionOdbcCommandOdbcDataReaderOdbcDataAdapter提供对使用 ODBC 公开的数据源中数据的访问用于 Oracle 的数据提供程序System.Data.OracleClientOracleConnectionOracleCommandOracleDataReaderOracleDataAdapter适用于 Or

7、acle 数据源DataSetDataSet对象又称为数据集对象,是支持对象又称为数据集对象,是支持ADO.NETADO.NET的断的断开式、分布式数据方案的核心对象,是开式、分布式数据方案的核心对象,是ADO.NETADO.NET技术的精技术的精髓。髓。DataSetDataSet是数据的内存驻留表示是数据的内存驻留表示形式,可以将其理解形式,可以将其理解为内存中的数据库。为内存中的数据库。DataSetDataSet对象包含一个或多个对象包含一个或多个DataTableDataTable(数据表)对(数据表)对象的集合,这些对象由数据行(象的集合,这些对象由数据行(DataRowDataR

8、ow)和数据列)和数据列(DataColumnDataColumn),以及有关),以及有关DataTableDataTable对象中数据的主键、对象中数据的主键、外键、约束和关系信息组成外键、约束和关系信息组成。其结构如下:其结构如下:DataSet 对象对象二、ADO.NET概述3 3二、ADO.NET概述特点特点:客户机一直保持和数据库服务器的连接。:客户机一直保持和数据库服务器的连接。适用环境适用环境:适合数据传输量少、系统规模不大、客户机:适合数据传输量少、系统规模不大、客户机和服务器在同一网络内的环境。和服务器在同一网络内的环境。连接模式下数据访问的步骤连接模式下数据访问的步骤连接模

9、式连接模式1三、ADO.NET数据库访问模式(1 1)使用)使用ConnectionConnection对象连接数据库;对象连接数据库;(2 2)使用)使用CommandCommand对象执行数据访问命令;对象执行数据访问命令;(3 3)使用)使用DataReaderDataReader对象访问数据;对象访问数据;(4 4)访问完毕后,关闭)访问完毕后,关闭DataReaderDataReader对象和对象和ConnectionConnection对象。对象。特点特点:客户机操作数据时可以断开和数据库服务器的连:客户机操作数据时可以断开和数据库服务器的连接。接。适用环境适用环境:适合网络数据量

10、大、系统节点多、网络结构:适合网络数据量大、系统节点多、网络结构复杂,尤其是通过复杂,尤其是通过InternetInternet进行连接的网络。进行连接的网络。断开连接模式下数据访问的步骤断开连接模式下数据访问的步骤(1 1)使用)使用ConnectionConnection对象连接数据库;对象连接数据库;(2 2)使用)使用CommandCommand对象设置数据访问命令;对象设置数据访问命令;(3 3)使用)使用DataAdapterDataAdapter对象访问数据并填充到对象访问数据并填充到DataSetDataSet对对象中;象中;断开断开连接模式连接模式三、ADO.NET数据库访问

11、模式2(4 4)在)在DataSetDataSet对象中执行数据的各种对象中执行数据的各种操作。操作。(5 5)使用)使用DataAdapterDataAdapter对象更新数据库。对象更新数据库。三、ADO.NET数据库访问模式声明并创建声明并创建ConnectionConnection对象对象格式:格式:* *Connection Connection 对象名对象名=new =new * *Connection(Connection(连接信息连接信息););(1 1)连接到)连接到SQL Server SQL Server 数据库的连接信息设置数据库的连接信息设置 采用采用Windows

12、NTWindows NT集成身份验证集成身份验证“Server=“Server=服务器名服务器名;Integrated Security=;Integrated Security=SSPI;DatabaseSSPI;Database= =数据库名数据库名” 采用采用SQL ServerSQL Server身份验证身份验证“Server=“Server=服务器名服务器名;UID=;UID=登录名登录名;PWD=;PWD=密码密码;Database=;Database=数据库名数据库名”注意:注意:连接到连接到SQL Server SQL Server 数据库一般使用数据库一般使用SQL Serv

13、erSQL Server数数据提供程序的据提供程序的SqlConnectionSqlConnection对象对象,以上连接信息是针对,以上连接信息是针对该连接对象而设置的。该连接对象而设置的。使用使用Connection对象连接数据库对象连接数据库1四、使用连接模式访问数据库(2 2)连接到)连接到AccessAccess数据库的连接信息设置数据库的连接信息设置“Provider=Microsoft.Jet.OLEDB.4.0;Data Source=“Provider=Microsoft.Jet.OLEDB.4.0;Data Source=数数据库文件名据库文件名 注意:注意:连接到连接到A

14、ccessAccess数据库一般使用数据库一般使用OLE DBOLE DB数据提供程序数据提供程序的的OleDbOleDbConnectionConnection对象对象,以上连接信息是针对该连接对,以上连接信息是针对该连接对象而设置的。象而设置的。例:例:采用采用Windows NTWindows NT集成身份验证方式连接到集成身份验证方式连接到SQL Server SQL Server 数据库。数据库。string string strCnnstrCnn=“Server=“Server=localhost;Integratedlocalhost;Integrated Security=Se

15、curity=SSPI;DatabaseSSPI;Database=Student”;=Student”;SqlConnectionSqlConnection sqlCnnsqlCnn = new = new SqlConnection(strCnnSqlConnection(strCnn););四、使用连接模式访问数据库使用使用ConnectionConnection对象连接到数据库对象连接到数据库格式:格式:对象名对象名. .Open();Open();例:例: sqlCnnsqlCnn. .Open();Open();说 明 :说 明 : 关 闭 连 接 对 象 使 用 如 下 格 式

16、:关 闭 连 接 对 象 使 用 如 下 格 式 : 对 象对 象名名. .Close();Close();,例如,例如sqlCnnsqlCnn.Close();.Close();四、使用连接模式访问数据库声明并创建声明并创建CommandCommand对象对象格式一:格式一: SqlCommandSqlCommand 对象名对象名=new =new SqlCommandSqlCommand( (命令字符串命令字符串, ,连接对象连接对象););格式二:格式二: SqlCommandSqlCommand 对象名对象名=new =new SqlCommandSqlCommand();();设置设

17、置CommandCommand对象的属性对象的属性ConnectionConnection:设置该实例的连接对象:设置该实例的连接对象; ;CommandTypeCommandType:设置该实例的命令类型,有三种:一般:设置该实例的命令类型,有三种:一般SQLSQL语句类型语句类型CommandType.TextCommandType.Text、存储过程类型、存储过程类型CommandType.StoredProcedureCommandType.StoredProcedure和和表类型表类型CommandType.TableDirectCommandType.TableDirect;Com

18、mandTextCommandText:可以是:可以是SQLSQL语句、存储过程名和表名语句、存储过程名和表名; ;使用使用Command对象访问数据库中数据对象访问数据库中数据四、使用连接模式访问数据库2例例1 1: string string sqlsql=select =select * * from student; from student; SqlCommandSqlCommand sqlCmdsqlCmd=new =new SqlCommand(sql,sqlCnnSqlCommand(sql,sqlCnn););例例2 2: string string sqlsql=selec

19、t =select * * from student; from student; SqlCommandSqlCommand sqlCmdsqlCmd=new =new SqlCommandSqlCommand();(); sqlCmd.ConnectionsqlCmd.Connection= =sqlCnnsqlCnn; ; sqlCmd.CommandTypesqlCmd.CommandType= =CommandType.TextCommandType.Text; ; sqlCmd.CommandTextsqlCmd.CommandText= =sqlsql; ;四、使用连接模式访问数据

20、库使用使用CommandCommand对象执行命令对象执行命令格式一:格式一:返回返回SqlDataReaderSqlDataReader对象,并通过该对象访问执对象,并通过该对象访问执行结果。一般在执行查询命令时使用该格式。行结果。一般在执行查询命令时使用该格式。 SqlDataReaderSqlDataReader 对象名对象名= =命令对象名命令对象名. .ExecuteReaderExecuteReader();();或或SqlDataReaderSqlDataReader 对象名对象名= =命令对象命令对象名名. .ExecuteReader(CommandBehavior.Clos

21、eConnectionExecuteReader(CommandBehavior.CloseConnection););格式二:格式二:返回受影响的行数。一般在执行插入、更新语句返回受影响的行数。一般在执行插入、更新语句或不返回结果集的存储过程时使用该格式。或不返回结果集的存储过程时使用该格式。命令对象名命令对象名. .ExecuteNonQueryExecuteNonQuery()(); ;格式三:格式三:返回结果集中的第一行第一列的值,忽略其他行返回结果集中的第一行第一列的值,忽略其他行或列,一般在执行统计查询时使用该格式。或列,一般在执行统计查询时使用该格式。命令对象名命令对象名. .E

22、xecuteScalarExecuteScalar();();四、使用连接模式访问数据库例如:例如:SqlDataReader sqlDr=sqlCmd.ExecuteReader();SqlDataReader sqlDr=sqlCmd.ExecuteReader();CommandCommand对象的高级使用:带参数的命令对象的高级使用:带参数的命令命令参数的格式:命令参数的格式:SQL Server 的数据提供程序使用命令参数(前面冠以 符号)指定参数;OLE DB的数据提供程序使用问号(?)指定参数。向向CommandCommand对象添加参数的格式:对象添加参数的格式: SqlPar

23、ameterSqlParameter 参数对象名参数对象名= =命令对象名命令对象名. .Parameters.AddParameters.Add(“(“参数参数名名”,”,参数类型参数类型, ,参数大小参数大小);); 参数对象名参数对象名.Direction =.Direction =参数方向(输入参数方向(输入/ /输出输出/ /双向双向/ /返回值参数)返回值参数); ; 参数对象名参数对象名. . Value =Value =参数值;参数值;四、使用连接模式访问数据库例如:例如:string strSql = select string strSql = select * * fro

24、m student where from student where 姓姓名名=name;=name; SqlCommand sqlCmd=new SqlCommand sqlCmd=new SqlCommand(strSql, sqlCnn); SqlCommand(strSql, sqlCnn); SqlParameter paraName= sqlCmd.Parameters.AddSqlParameter paraName= sqlCmd.Parameters.Add (name,SqlDbType.NVarChar,10);(name,SqlDbType.NVarChar,10);

25、paraName.Direction=ParameterDirection.Input paraName.Direction=ParameterDirection.Input; paraName.Value = lstName.Text;paraName.Value = lstName.Text;注:注:OLE DB的数据提供程序的参数在添加时必须与参数定义的顺序一致, SQL Server的数据提供程序则不作要求,但也最好一致。四、使用连接模式访问数据库四、使用连接模式访问数据库使用使用DataReader对象对象读取数据读取数据3 3获取获取SqlDataReaderSqlDataRead

26、er对象对象通过通过CommandCommand对象对象ExecuteReaderExecuteReader()()方法获取。使用格方法获取。使用格式同前述。式同前述。注意:注意:不能使用不能使用newnew关键字创建关键字创建SqlDataReaderSqlDataReader对象。对象。SqlDataReaderSqlDataReader对象的主要属性与方法对象的主要属性与方法FieldCountFieldCount属性属性: :获取当前行中的列数;获取当前行中的列数;GetStringGetString方法:方法:获取指定字段的字符串类型的值;获取指定字段的字符串类型的值;CloseCl

27、ose方法:方法:关闭关闭SqlDataReaderSqlDataReader对象。对象。 四、使用连接模式访问数据库ReadRead方法:方法:前进到下一条记录。若该记录存在,则返回前进到下一条记录。若该记录存在,则返回truetrue,否则返回,否则返回falsefalse; 注意注意:SqlDataReaderSqlDataReader对象记录指针的默认位置在第一对象记录指针的默认位置在第一条记录前面,因此,必须调用条记录前面,因此,必须调用ReadRead方法从第一条记录开始方法从第一条记录开始读取数据。读取数据。使用使用SqlDataReaderSqlDataReader对象读取数据

28、对象读取数据格式:格式: GetString(GetString(字段序号字段序号) ) 或或对象名对象名“字段名字段名” 或或 对象名对象名 字段序号字段序号 四、使用连接模式访问数据库例如:例如: SqlDataReaderSqlDataReader sqlDr=sqlCmd.ExecuteReader();sqlDr=sqlCmd.ExecuteReader(); if(sqlDr.Readif(sqlDr.Read()() textBox1.Text=textBox1.Text=sqlDrsqlDr姓名姓名.ToStringToString();(); textBox1.Text=te

29、xtBox1.Text=sqlDr.GetString(sqlDr.GetString(1 1) ); DataSetDataSet( (数据集数据集) )对象:内存中的数据库;对象:内存中的数据库;DataTableDataTable( (数据表数据表) )对象:内存中的数据表,可以独立存在;对象:内存中的数据表,可以独立存在;DataRowDataRow( (数据行数据行) )对象:设置数据表中的行;对象:设置数据表中的行;DataColumnDataColumn( (数据列数据列) )对象:设置数据表中的列;对象:设置数据表中的列;DataViewDataView( (数据视图数据视图)

30、 )对象:提供界面显示的数据,该数据来自数据表。对象:提供界面显示的数据,该数据来自数据表。该对象支持数据筛选;该对象支持数据筛选;DataRelationDataRelation( (关系关系) )对象:对象:设置数据表间的关系;设置数据表间的关系;ConstraintConstraint对对( (约束约束) )对象:对象:设置数据表间的约束;设置数据表间的约束;BindingSourceBindingSource ( (绑定源绑定源) )对象:是内存中的数据源和控件间的桥梁,对象:是内存中的数据源和控件间的桥梁,用于实现数据绑定;用于实现数据绑定;DataAdapterDataAdapter( (数据适配器数据适配器) )对象:是远程数据源与对象:是远程数据源与DataSetDataSet间的桥梁;间的桥梁;CommandBuilderCommandBuilder( (命令生成器命令生成器) )对象:根据用户进行的操作自动生成相对象:根据用户进行的操作自动生成相应的命令。应的命令。与本连接模式有关的对象:与本连接模式有关的对象:四、使用断开连接模式访问数据库

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

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(C#数据库应用程序设计课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|