ADO.NET经过长时间的发展,很多用户都很了解ADO.NET SqlCommand对象了,这里我发表一下个人理解,和大家讨论讨论。ADO.NET提供了多种对象模型,比较典型的以下有五种,它们全部归类在System.Data.SqlClient名称空间下。
ADO.NET SqlCommand对象
在ADO.NET中,有两种操作数据库的方式:1.无连接的方式;2.保持连接的方式。
不论采用哪种方式,都可以通过SqlCommand对象提供的方法传递对数据库操作的命令,并返回命令执行的结果。在保持连接的方式下操作数据库的一般步骤为:创建SqlConnection的实例;.创建SqlCommand的实例;打开连接;执行命令;关闭连接。
#T#ADO.NET SqlCommand对象提供了多种完成对数据库操作的方法。常用的有ExecuteNonQuery该方法执行SQL语句的结果,但不返回命令执行的表数据,仅返回操作所影响的行数。ExecuteReader,ExecuteReader方法提供了只向前的、顺序的快速读取数据库中数据的方法。该方法根据提供的SELECT语句,返回一个可以顺序读取的SqlDataReader对象,编程者可以使用Read方法循环依次读取每个记录中各字段(列)的内容。ExecuteScaler(),该方法用于执行SELECT查询,得到的返回结果为一个值的情况,比如使用count函数求表中记录个数或者使用sum函数求和等。
SqlConnection对象
ADO.NET使用SqlConnection对象与SQL Server进行连接。连接字符串的常用形式有两种:
1.使用Windows集成安全身份认证,例如:
- string connectionString ="IntegratedSecurity=SSPI;
- Database=MyDatabase.mdf;Server=localhost;";
或:
- string connectionString = "Initial Catalog= MyDataBase;
- Data Source=localhost;Integrated Security=SSPI;"
2.在连接字符串中指定服务器名、用户id、用户口令、数据库名等信息。例如:
- string connectionString = "server=localhost; uid=sa;
- pwd=123; database=MyDatabase.mdf";
然后通过连接字符串直接创建SqlConnection对象,如
- SqlConnection conn = new SqlConnection(connectionString);