1. 执行查询,不返回任何结果集:
2. 执行查询,只返回一条结果:
区别: ExecuteNonQuery主要是在执行更新和删除时才返回影响的数目,而在执行查询时则是返回一个0.ExecuteScalar主要用于查询语句.返回条数.
3. 利用DataReader,获取结果集:
4. SqlDataAdapter:
SqlDataAdapter类用作ADO.NET对象模型中和数据连接部分和未连接部分之间的桥梁。SqlDataAdapter从数据库中获取数据,并将其存储在DataSet中。SqlDataAdapter也可能取得DataSet中的更新,并将它们提交给数据库。
SqlDataAdapter是为处理脱机数据而设计的,调用其Fill方法填充DataSet时甚至不需要与数据库的活动连接。即如果调用Fill方法时,SqlDataAdapter与数据库的连接不是打开时,SqlDataAdapter将打开数据库连接,查询数据库,提取查询结果,将查询结果填入DataSet,然后关闭也数据库的连接。
command.ExecuteNonQuery()
,包括 SQL SELECT、UPDATE、DELETE 语句、没有返回数值的存储过程、CREATE TABLE和CREATE INDEX 之类的 DDL 语句
2. 执行查询,只返回一条结果:
command.ExecuteScalar()
方法执行查询,并返回查询所返回的结果集中第一行的第一列。忽略额外的列或行。
区别: ExecuteNonQuery主要是在执行更新和删除时才返回影响的数目,而在执行查询时则是返回一个0.ExecuteScalar主要用于查询语句.返回条数.
3. 利用DataReader,获取结果集:
command.ExecuteReader()
,ExecuteReader()方法需要配合 SqlDataReader 对象使用,执行得到的数据集为只读且光标只能从前向后移动。
4. SqlDataAdapter:
SqlDataAdapter类用作ADO.NET对象模型中和数据连接部分和未连接部分之间的桥梁。SqlDataAdapter从数据库中获取数据,并将其存储在DataSet中。SqlDataAdapter也可能取得DataSet中的更新,并将它们提交给数据库。
SqlDataAdapter是为处理脱机数据而设计的,调用其Fill方法填充DataSet时甚至不需要与数据库的活动连接。即如果调用Fill方法时,SqlDataAdapter与数据库的连接不是打开时,SqlDataAdapter将打开数据库连接,查询数据库,提取查询结果,将查询结果填入DataSet,然后关闭也数据库的连接。