0

尝试在我的 sql 语句中使用参数时出现此错误,但不使用时它工作正常。我的代码如下:

Dim i As String
Dim sql as String

 sql = "SELECT * FROM tblStaff WHERE Username = @User AND Password = @Pass"
 myCommand = New SqlCommand(sql, myConnection)
 myCommand.Parameters.AddWithValue("@User", txtUser.Text)
 myCommand.Parameters.AddWithValue("@Pass", txtPassword.Text)

 i = myCommand.ExecuteScalar
 txtUserType.Text = i.ToString

当我评论时txtUserType.Text = i.ToString,它工作正常。任何想法?

4

1 回答 1

0

ExecuteScalar 应该只返回一个值,比如整数。因此,如果您在 SQL 语句中仅指定一列(例如从 tblStaff 中选择用户类型...),则执行标量应返回一个整数(如果该列是数字)。

然后它应该工作。

顺便说一句..您不必对作为字符串的变量使用 ToString 。只需使用变量名称 txtUserType.Text = i

于 2011-07-04T08:58:09.433 回答