SqlCommend 对象中的方法
1:ExecuteNonQuery(), 执行对象中 CommandText 中的 SQL 语句并返回受影响的行数。
2:ExecuteScalar(),执行 SQL 语句 并返回执行结果的第一行第一列。
3:ExecuteReader(),返回一个结果集 SqlDataReader。
当主键设置为自动生长时,执行 INSERT 语句时要获取他的新插入之间的值是多少,可以在 VALUES 之前添加语句 OUTPUT INSERTED.Id。整个语句执行结果插入数据并返回他刚插入的主键值。
ExecuteReader() 对象 的用法:
1:Read() 方法,每调用一次Read(),就往后移一行,可以用 while 遍历整个结果集
2:GetString(int id) 获取数据集中第 id 列的值
3:GetOriginal( string Name) ,根据列名获取它在第几列
4:返回一个 SqlDataReader 对象。
ExecuteReader()取出的数据是在SQL Server服务器上连接的,当连接断开时就不能再取数据了。优势是是无论取多少条数据,对本机都没有影响。
DataSet() 数据集,将数据放在本机的程序内存中,优点是当连接断开时仍然能操作数据。
首先创建一个 DataSet() 对象,在创建一个 SqlDataAdapter( ConnStr ) 对象,然后用 SqlDataAdapter 对象的 FILL() 方法将数据填充到 DataSet 对象中,然后就可以在本地操作数据了,即使连接断开仍能操作。当对数据进行修改时,要用 SqlDataAdapter 对象的 Update() 方法将修改的数据重新上传到数据库服务器。使用更新时,需要自己写更新语句,例如 Insert,delete 等。也可以用 SqlCommandBuilder 来自动帮我们生成查询语句。