首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

ExecuteNonQuery、ExecuteScalar、Dataset、ExecuteReader的不同意思和用法

2012-08-28 
ExecuteNonQuery、ExecuteScalar、Dataset、ExecuteReader的不同意义和用法1. ExecuteNonQuery 方法执行一个

ExecuteNonQuery、ExecuteScalar、Dataset、ExecuteReader的不同意义和用法

1. ExecuteNonQuery 方法执行
一个非查询语句( Update 、 Insert、 Delete等) 

返回值是执行的影响行数,返回类型为int

例如:

 using (SqlCommand cmd = conn.CreateCommand())

{
cmd.CommandText = "Insert into

T_Users(UserName,Password) values('admin','888888')";
cmd.ExecuteNonQuery();

2.ExecuteScalar用于执行查询,并返回查询所返回的结果集中第一行的第一列,返回类型为object

例如:

(1).

 cmd.CommandText = "select count(*) from T_Users";int i =
Convert.ToInt32(cmd.ExecuteScalar()) 

(2).

 得到自动增长字段的主键值,在 values关键词前加上 output
inserted.Id ,其中 Id 为主键字段名。执行结果就试插入的主键值,用
ExecuteScalar 执行最方便。

?cmd.CommandText = "Insert into T_Users(UserName,Password)

output inserted.Id values('admin','888888')";
? int i = Convert.ToInt32(cmd.ExecuteScalar());

3.ExecuteReader执行有多行结果集的

 SqlDataReader reader = cmd.ExecuteReader();...
while (reader.Read())
{ Console.WriteLine(reader.GetString(1))

4.DataSet

SqlDataAdapter是DataSet和数据库之间沟通的桥梁,数据集DataSet包含若干表DataTable。

 DataSet dataset = new DataSet(); SqlDataAdapter adapter = new
SqlDataAdapter(cmd); adapter.Fill(dataset);
SqlDataAdapter 是 DataSet 和数据库之间沟通的桥梁。数据集DataSet 包
含若干表 DataTable ,DataTable 包含若干行DataRow 。foreach
(DataRow row in dataset.Tables[0].Rows) row["Name"] 。 



热点排行