在VS2010中使用ExecuteScalar时出现SQL异常

时间:2011-11-30 02:23:37

标签: asp.net sql vb.net

我正在为asp.net应用程序的登录页面工作。我正在进行自己的登录,到目前为止一切正常:我得到一个连接,查询要求从表中返回Count,其中用户名和密码与表中的用户名密码相匹配。

问题出现在这里:

intResult = DirectCast(cmd.ExecuteScalar(), Integer)

我收到错误:Invalid Column name "MemberLogin" "MemberPassword"

以下是相关代码:

 Dim strSQLQuery As String
        strSQLQuery = "SELECT Count(*) WHERE [MemberLogin] = @MemberLogin And [MemberPassword] = @MemberPassword"
        Dim intResult As Integer = 0

        Dim cmd As New SqlCommand(strSQLQuery, sqlConnection)

        cmd.Parameters.AddWithValue("@MemberLogin", txtUsername.Text)
        cmd.Parameters.AddWithValue("@MemberPassword", txtPassword.Text)
        sqlConnection.Open()

        intResult = DirectCast(cmd.ExecuteScalar(), Integer)

        If intResult > 0 Then
            Return True
        End If

        sqlConnection.Close()

1 个答案:

答案 0 :(得分:2)

您错过了FROM条款

SELECT Count(*)

FROM yourTable 需要到这里

WHERE [MemberLogin] = @MemberLogin
   And [MemberPassword] = @MemberPassword