ExecuteReader用于执行插入/更新查询

时间:2018-02-01 06:42:16

标签: sql-server vb.net executereader

好的,所以我刚刚给这个旧的vb.net(2008)程序做了一些修改,我发现了一些奇怪的东西。正在使用ExecuteReader执行插入/更新查询,它类似于此

Dim sqlcommand as new SqlCommand("Insert query", connection)
Dim sqldatareader as SqlDataReader = sqlcommand.ExecuteReader()

由于某种原因,它可以正常插入/更新数据。这有什么缺点吗?我是否应该费心完成该程序并将所有内容更改为ExecuteNonQuery

2 个答案:

答案 0 :(得分:1)

当您希望SQL命令返回某些输出时,通常会使用Execute Reader。比如选一行。但是如果你没有任何结果,只是一个简单的插入或更新,那么ExecuteNonQuery就足够了

答案 1 :(得分:1)

仔细查看INSERT命令,如果它具有OUTPUT子句,则它实际上可以返回数据。