C#_数据库应用程序设计

上传人:gui****hi 文档编号:205000730 上传时间:2023-04-27 格式:PPT 页数:24 大小:831KB
收藏 版权申诉 举报 下载
C#_数据库应用程序设计_第1页
第1页 / 共24页
C#_数据库应用程序设计_第2页
第2页 / 共24页
C#_数据库应用程序设计_第3页
第3页 / 共24页
资源描述:

《C#_数据库应用程序设计》由会员分享,可在线阅读,更多相关《C#_数据库应用程序设计(24页珍藏版)》请在装配图网上搜索。

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

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

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

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

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

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

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

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

9、nectionConnection对象连接数据库;对象连接数据库;(2 2)使用)使用CommandCommand对象执行数据访问命令;对象执行数据访问命令;(3 3)使用)使用DataReaderDataReader对象访问数据;对象访问数据;(4 4)访问完毕后,关闭)访问完毕后,关闭DataReaderDataReader对象和对象和ConnectionConnection对象。对象。特特点点:客客户户机机操操作作数数据据时时可可以以断断开开和和数数据据库库服服务务器器的的连连接。接。适适用用环环境境:适适合合网网络络数数据据量量大大、系系统统节节点点多多、网网络络结结构构复杂,尤其是通

10、过复杂,尤其是通过InternetInternet进行连接的网络。进行连接的网络。断开连接模式下数据访问的步骤断开连接模式下数据访问的步骤(1 1)使用)使用ConnectionConnection对象连接数据库;对象连接数据库;(2 2)使用)使用CommandCommand对象设置数据访问命令;对象设置数据访问命令;(3 3)使使用用DataAdapterDataAdapter对对象象访访问问数数据据并并填填充充到到DataSetDataSet对对象中;象中;断开断开连接模式连接模式三、ADO.NET数据库访问模式2(4 4)在在DataSetDataSet对对象象中中执执行行数数据据的的

11、各各种种操作。操作。(5 5)使用)使用DataAdapterDataAdapter对象更新数据库。对象更新数据库。三、ADO.NET数据库访问模式声明并创建声明并创建ConnectionConnection对象对象格格式式:*Connection Connection 对对象象名名=new=new*Connection(*Connection(连连接接信信息息););(1 1)连接到)连接到SQL Server SQL Server 数据库的连接信息设置数据库的连接信息设置 采用采用Windows NTWindows NT集成身份验证集成身份验证“Server=Server=服服务务器器名名

12、;Integrated;Integrated Security=Security=SSPI;DatabaseSSPI;Database=数数据据库库名名”采用采用SQL ServerSQL Server身份验证身份验证“Server=Server=服务器名服务器名;UID=;UID=登录名登录名;PWD=;PWD=密码密码;Database=;Database=数据库名数据库名”注注意意:连连接接到到SQL SQL Server Server 数数据据库库一一般般使使用用SQL SQL ServerServer数数据据提提供供程程序序的的SqlConnectionSqlConnection对对

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

14、leDbConnectionConnection对对象象,以以上上连连接接信信息息是是针针对对该该连连接接对对象而设置的。象而设置的。例例:采采用用Windows Windows NTNT集集成成身身份份验验证证方方式式连连接接到到SQL SQL Server Server 数据库。数据库。string string strCnnstrCnn=“Server=Server=localhost;Integratedlocalhost;Integrated Security=Security=SSPI;DatabaseSSPI;Database=Student=Student”;SqlConnec

15、tionSqlConnection sqlCnnsqlCnn=new =new SqlConnection(strCnnSqlConnection(strCnn););四、使用连接模式访问数据库使用使用ConnectionConnection对象连接到数据库对象连接到数据库格式:格式:对象名对象名.Open();Open();例:例:sqlCnnsqlCnn.Open();Open();说说明明:关关闭闭连连接接对对象象使使用用如如下下格格式式:对对象象名名.Close();Close();,例如,例如sqlCnnsqlCnn.Close();.Close();四、使用连接模式访问数据库声明并

16、创建声明并创建CommandCommand对象对象格式一:格式一:SqlCommandSqlCommand 对象名对象名=new=new SqlCommandSqlCommand(命令字符串命令字符串,连接对象连接对象););格式二:格式二:SqlCommandSqlCommand 对象名对象名=new=new SqlCommandSqlCommand();();设置设置CommandCommand对象的属性对象的属性ConnectionConnection:设置该实例的连接对象:设置该实例的连接对象;CommandTypeCommandType:设置该实例的命令类型,有三种:一般:设置该实例

17、的命令类型,有三种:一般SQLSQL语句类型语句类型CommandType.TextCommandType.Text、存储过程类型、存储过程类型CommandType.StoredProcedureCommandType.StoredProcedure和和表类型表类型CommandType.TableDirectCommandType.TableDirect;CommandTextCommandText:可以是:可以是SQLSQL语句、存储过程名和表名语句、存储过程名和表名;使用使用Command对象访问数据库中数据对象访问数据库中数据四、使用连接模式访问数据库2例例1 1:string st

18、ring sqlsql=select*from student;=select*from student;SqlCommandSqlCommand sqlCmdsqlCmd=new=new SqlCommand(sql,sqlCnnSqlCommand(sql,sqlCnn););例例2 2:string string sqlsql=select*from student;=select*from student;SqlCommandSqlCommand sqlCmdsqlCmd=new=new SqlCommandSqlCommand();();sqlCmd.ConnectionsqlCmd

19、.Connection=sqlCnnsqlCnn;sqlCmd.CommandTypesqlCmd.CommandType=CommandType.TextCommandType.Text;sqlCmd.CommandTextsqlCmd.CommandText=sqlsql;四、使用连接模式访问数据库使用使用CommandCommand对象执行命令对象执行命令格格式式一一:返返回回SqlDataReaderSqlDataReader对对象象,并并通通过过该该对对象象访访问问执执行结果。一般在执行查询命令时使用该格式。行结果。一般在执行查询命令时使用该格式。SqlDataReaderSqlDa

20、taReader 对象名对象名=命令对象名命令对象名.ExecuteReaderExecuteReader();();或或SqlDataReaderSqlDataReader 对象名对象名=命令对象名命令对象名.ExecuteReader(CommandBehavior.CloseConnectionExecuteReader(CommandBehavior.CloseConnection););格格式式二二:返返回回受受影影响响的的行行数数。一一般般在在执执行行插插入入、更更新新语语句句或不返回结果集的存储过程时使用该格式。或不返回结果集的存储过程时使用该格式。命令对象名命令对象名.Exec

21、uteNonQueryExecuteNonQuery()();格式三:格式三:返回结果集中的第一行第一列的值,忽略其他行返回结果集中的第一行第一列的值,忽略其他行或列,一般在执行统计查询时使用该格式。或列,一般在执行统计查询时使用该格式。命令对象名命令对象名.ExecuteScalarExecuteScalar();();四、使用连接模式访问数据库例如:例如:SqlDataReader sqlDr=sqlCmd.ExecuteReader();SqlDataReader sqlDr=sqlCmd.ExecuteReader();CommandCommand对象的高级使用:带参数的命令对象的高级

22、使用:带参数的命令命令参数的格式:命令参数的格式:SQL Server 的数据提供程序使用命令参数(前面冠以 符号)指定参数;OLE DB的数据提供程序使用问号(?)指定参数。向向CommandCommand对象添加参数的格式:对象添加参数的格式:SqlParameterSqlParameter 参参数数对对象象名名=命命令令对对象象名名.Parameters.AddParameters.Add(“参参数数名名”,参数类型参数类型,参数大小参数大小););参参数数对对象象名名.Direction.Direction=参参数数方方向向(输输入入/输输出出/双双向向/返返回回值值参参数数);参数对

23、象名参数对象名.Value=Value=参数值;参数值;四、使用连接模式访问数据库例如:例如:string string strSql strSql=select select*from from student student where where 姓名姓名=name;=name;SqlCommand sqlCmd=new SqlCommand sqlCmd=new SqlCommand(strSql,sqlCnn);SqlCommand(strSql,sqlCnn);SqlParameter paraName=sqlCmd.Parameters.AddSqlParameter paraN

24、ame=sqlCmd.Parameters.Add (name,SqlDbType.NVarChar,10);(name,SqlDbType.NVarChar,10);paraName.Direction=ParameterDirection.Input paraName.Direction=ParameterDirection.Input;paraName.Value=lstName.Text;paraName.Value=lstName.Text;注注:OLE DB的数据提供程序的参数在添加时必须与参数定义的顺序一致,SQL Server的数据提供程序则不作要求,但也最好一致。四、使用连接

25、模式访问数据库四、使用连接模式访问数据库使用使用DataReader对象对象读取数据读取数据3 3获取获取SqlDataReaderSqlDataReader对象对象通通过过CommandCommand对对象象ExecuteReaderExecuteReader()()方方法法获获取取。使使用用格格式同前述。式同前述。注意:注意:不能使用不能使用newnew关键字创建关键字创建SqlDataReaderSqlDataReader对象。对象。SqlDataReaderSqlDataReader对象的主要属性与方法对象的主要属性与方法FieldCountFieldCount属性属性:获取当前行中的

26、列数;获取当前行中的列数;GetStringGetString方法:方法:获取指定字段的字符串类型的值;获取指定字段的字符串类型的值;CloseClose方法:方法:关闭关闭SqlDataReaderSqlDataReader对象。对象。四、使用连接模式访问数据库ReadRead方方法法:前前进进到到下下一一条条记记录录。若若该该记记录录存存在在,则则返返回回truetrue,否则返回,否则返回falsefalse;注注意意:SqlDataReaderSqlDataReader对对象象记记录录指指针针的的默默认认位位置置在在第第一一条条记记录录前前面面,因因此此,必必须须调调用用ReadRea

27、d方方法法从从第第一一条条记记录录开开始始读取数据。读取数据。使用使用SqlDataReaderSqlDataReader对象读取数据对象读取数据格式:格式:GetString(GetString(字段序号字段序号)或或对象名对象名“字段名字段名”或或 对象名对象名 字段序号字段序号 四、使用连接模式访问数据库例如:例如:SqlDataReaderSqlDataReader sqlDr=sqlCmd.ExecuteReader();sqlDr=sqlCmd.ExecuteReader();if(sqlDr.Readif(sqlDr.Read()()textBox1.Text=textBox1.

28、Text=sqlDrsqlDr姓名姓名.ToStringToString();();textBox1.Text=textBox1.Text=sqlDr.GetString(sqlDr.GetString(1 1);DataSetDataSet(数据集数据集)对象:内存中的数据库;对象:内存中的数据库;DataTableDataTable(数据表数据表)对象:内存中的数据表,可以独立存在;对象:内存中的数据表,可以独立存在;DataRowDataRow(数据行数据行)对象:设置数据表中的行;对象:设置数据表中的行;DataColumnDataColumn(数据列数据列)对象:设置数据表中的列;对

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

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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