0

我调用了一个名为 mySQLQuery_exist 的函数,它返回一个“布尔值”,我在“if”下测试它,当我调用它时,它给了我错误“赋值的左侧必须是变量、属性或索引器”。

 ....

     // blue syntax error appears on mySQLQuery_exist         
     if (mySQLQuery_exist("1", "SELECT fld_logUserName,fld_logPassword FROM tbl_SystemAccess where fld_logUserName = '" + var_words[1].Trim() + "' AND " + "fld_logPassword = '" + var_words[2].Trim() + "' AND fld_logIPAddress = '" + var_words[3].Trim() + "'", "CIS"))

      ....

.....

//if it helps this is how i declared my function
public Boolean mySQLQuery_exist(string var_SQLConnector, string var_SQLCommand, string var_SQLdatabase)

.....

如果没有记录,我只想返回 false,如果找到至少 1 条记录,则返回 true

谢谢

4

1 回答 1

0

这是对我有用的代码:

    string var_Select = "SELECT ....WHERE...";

   //test boolean result from mySQLQuery_exist
    if (mySQLQuery_exist(var_Select))
    {
    ....
    ....

    // function to check if any records found or none
    public Boolean mySQLQuery_exist(string var_SQLCommand)
    {
        Boolean var_Result = false;

        using (SqlConnection myConn = new SqlConnection(var_pubicSQLConnect))
        using (SqlCommand var_command = new SqlCommand(var_SQLCommand, myConn))
        {
            myConn.Open();
            using (SqlDataReader var_RS = var_command.ExecuteReader())

                if (var_RS.Read())
                    var_Result = true;
        }
        return var_Result;            
    }

似乎如果函数参数太长并且由 SQL 字符串组成,则会出现该错误。我所做的是将所有参数作为公共参数,除了我包含在变量中并传递给我的函数的 SQL 查询。该函数返回真或假,具体取决于它是否根据 SQL 查询找到任何记录。

感谢您的帮助。

于 2013-06-27T09:02:10.537 回答