必须声明表变量<运算符.addwithvalue例外

时间:2015-06-09 14:52:16

标签: c# sql

我在使用以下sql命令时遇到了一些问题。首先 当我运行以下查询时,我会在' @ IQueryType'附近获得异常'不正确的语法。'但是当我在命令中用@IQueryType替换<符号它工作正常。其次我得到例外'必须声明表变量" @ ATable"' ATable只是一个包含值" customers"的字符串。任何帮助表示赞赏

    using (SqlCommand isTrue = new SqlCommand("SELECT CASE WHEN EXISTS(select * from @ATable where @AField @IQueryType @NTestValue and date_time_CCM > dateadd(hh,-@TPeriod,getdate()))THEN 'TRUE' ELSE 'FALSE' END", con))
            {
                isTrue.Parameters.AddWithValue("@ATable", (String)ATable);
                isTrue.Parameters.AddWithValue("@AField",(String)AField);
                isTrue.Parameters.AddWithValue("@IQueryType",(String) "<");
                isTrue.Parameters.AddWithValue("@NTestValue", NTestValue);
                isTrue.Parameters.AddWithValue("@TPeriod", 1);

                con.Open();
                SqlDataReader dr = isTrue.ExecuteReader();
                while (dr.Read())
                {
                    Active = dr[0].ToString();
                }
                con.Close();
                Console.WriteLine(Active + " this is the result you want");
            }

0 个答案:

没有答案