【发布时间】:2013-07-21 06:58:09
【问题描述】:
primary_student_table 中有 10 行。
当我执行下面的代码时,结果是-1。
Dim count As Int16
con.Open()
query = "SELECT COUNT(roll) AS rollcount FROM primary_student_table WHERE admityear = 2011 AND batch = 1 "
cmd = New SqlCommand(query, con)
count = cmd.ExecuteNonQuery
MsgBox(count)
con.Close()
以上代码有什么问题?
【问题讨论】:
-
1. 题外话,但仍然是一个潜在的问题:在您使用完
cmd和con后,您没有调用它们。 2.Int16没有错,但在 VB.NET 中,您通常会使用关键字Short来引用该类型。 3. 理想情况下,您应该在最晚可能的时刻调用con.Open(),即在执行命令之前;也就是说,一般来说,尽量在最短的时间内保持连接打开。 -
除了491243提到的问题,
count(*)和count(row)会产生不同的结果。
标签: sql-server vb.net ado.net