Ado.Net学习笔记

来源:互联网 发布:javascript toast 编辑:程序博客网 时间:2024/05/16 14:51

.Net数据提供程序的四个核心对象:

1.Connection对象-用于建立特定数据源的连接.
2.Command对象-用于对数据源执行sql等命令.
3.DataReader对象-用于从数据源中读取只进只读的数据流.
4.DataAdapter对象-用于将数据填充到DataSet对象.

下面分别详细记录一下:

一.Connection的属性和方法;

①.连接字符串(ConnectionString)属性:
用于获取或设置打开数据库的字符串,是Connection的重要属性,直接决定着数据源连接是否成功,该字符串中的参数包括有:
Provider参数–设置和返回连接提供程序的名称.
Server参数(Data Source)–连接打开时的数据库服务器名或数据库文件名.
Database参数(Initial Catalog)–指定数据库服务器中所要链接的数据库名称.
Uid参数(UserId)–登陆数据源的用户账号.
Pwd参数(Password)–登陆数据源的用户密码.
Encrypt参数–指定是否对数据进行加密,当取值为true时,则将对所有在客户端和服务器之间传送的数据使用SSL加密,反之.
Integrated Security参数(Trusted Connection)–指定是否使用继承的安全验证,取值false时,将在该连接字符串中设定Uid和Pwd,取值true时,将使用当前的windows账户进行身份验证.
Persist Security Info参数–指定是否对连接中的安全敏感信息进行保留和返回,取值false时不返回,建议使用false.
②.连接时限(Connection Timeout)属性:
确定打开数据源连接将要等待的最长时间,可以防止数据源链接的无限制等待,以秒为单位,默认值为15秒.根据所处的环境选择适当的取值.
③.连接状态(State)属性:
该属性用于获取链接的当前状态,取值有:
1.adStateClosed:表明Connection对象是关闭的(默认值);
2.adStateConnecting:表明正在连接数据源;
3.adStateExecuting:表明Connection或Command对象的Execute方法已被调用;
4.adStateFetching:表明返回行(row)到Recordset对象;
5.adStateOpen:表明Connection对象是打开的;
④.打开连接(Open)方法:
打开由ConnectionString属性指定的数据源连接;
⑤.关闭连接(Close)方法:
关闭与数据源的连接,同时该Connection对象失效;

Connection对象的使用:
ADOConnection对象 conn = new ADOConnection对象();//创建Connection对象
conn.ConnectionString=”参数”;//设置ConnectionString连接字符串属性
conn.Open();//打开数据源连接
…….//对数据库的操作和数据处理代码部分
conn.Close();//关闭数据源连接

二.Command对象-执行数据库操作

ADO.NET提供两种操作数据库的方法:
(1)使用数据集对数据库进行操作和处理
先在内存中创建要使用记录的存储区,再用数据库适配器
(DataAdapter)将要操作的数据记录加载到该存储区以操作数据;
最后可以选择使用数据适配器将数据的更新写回到数据库。
(2)直接对数据库进行操作和处理
先使用SQL语句和存储过程的名称配置数据命令(Command)对
象,之后执行数据操作命令,若该命令返回一个结果集,则可使
用数据读取器对象获取数据。
采用直接数据库操作时,使用数据命令Command直接与数据
源通信,使用Command对象来执行SELECT、INSERT、
UPDATE或DELETE之类的SQL语句,调用存储过程或从特定表
中取得记录,完成数据库的操作和处理。

下面拿sqlCommand对象作为例子

SqlCommand对象用于对SQLServer数据库执行命令。
OleDbCommand对象用于对支持OleDb的数据库执行命令。
OdbcCommand对象用于对支持Odbc的数据库执行命令。尽管
SqlCommand类是针对SqlServer的,但是这个类的许多属性、方
法与事件和OleDbCommand及OdbcCommand等类相似;

sqlCommand的主要属性:

CommandText属性:获取或设置要对数据源执行的sql语句,存储过程或表,其返回类型为string;
CommandTimeOut属性:获取或设置在终止执行命令的尝试并生成错误之前的等待时间,返回类型为int;
CommandType属性
读取或设置表示CommandText属性将如何被解释的值,其返回
类型为CommandType,有效的值有,CommandType.Text、
CommandType.StoredProcedur与CommandType.TableDirect,分别
表示SQL语句、存储过程调用或要读取的表,默认为Text。
Connection属性
获取或设置SqlCommand的此实例使用的SqlConnection对象,
其返回类型为string。
Parameters属性
取得提供给命令的参数(采用参数命令时有效),其返回类型为
SqlParameterCollection;

SqlCommand的主要方法:

Cancel方法
取消命令的执行,其返回类型为void。
CreateParameter方法
其返回类型为SqlParameter,用于创建SqlParameter对象的实例。
ExecuteNonQuery方法
执行不返回结果集的SQL语句,其返回类型为int,此int值代表
该命令影响的记录行数。
ExecuteReader方法
执行有返回结果的数据操作,返回含有SqlDataReader的结果集
ExecuteScalar方法
执行返回单值的SELECT语句,这个命令结果作为对象被返回。
ExecuteXmlReader方法
执行返回XML数据的SELECT语句,其返回类型为包括有结果
集的XmlReader,只适用于SqlCommand类;

sqlCommand对象的生成:

可以用SqlCommand对象的构造函数或调用SqlConnection对象的
CreateCommand方法生成SqlCommand对象
用构造函数生成SqlCommand对象
SqlCommand对象的构造函数如下所示;
SqlCommand( )
SqlCommand(stringCommandText)
SqlCommand(stringCommandText,SqlConnectionsqlCon)
在使用SqlCommand对象之前,首先要确定一个SqlConnection对
象,用于和SQLServer数据库进行数据传递,然后可以用new语句
生成新的SqlCommand对象,再将SqlCommand对象的Connection属
性设置为对应的SqlConnection对象,这样SqlCommand对象就可以
使用SqlConnection对象与数据库进行数据传递;

原创粉丝点击