新手上路,碰到一个问题,求解!
C#环境下:
1. command.CommandText = "select A from B where A1=a1 and B1=b1";
command.ExecuteNonQuery();
这样的执行正确,没有错误发生。
2. 当把表名和列名都作为参数,如表名tab,列名c_name,列值c_value
command.CommandText = "select A from "+ tab +" where "+ c_name +" = "+ c_value +""
command.ExecuteNonQuery();
这样的执行就会出错,提示列名不正确,到底为何?
C#环境下:
1. command.CommandText = "select A from B where A1=a1 and B1=b1";
command.ExecuteNonQuery();
这样的执行正确,没有错误发生。
2. 当把表名和列名都作为参数,如表名tab,列名c_name,列值c_value
command.CommandText = "select A from "+ tab +" where "+ c_name +" = "+ c_value +""
command.ExecuteNonQuery();
这样的执行就会出错,提示列名不正确,到底为何?
"select A from "+ tab +" where "+ c_name +" = "+ c_value +""
string.Format(" select a from {0} where {1}={2} ",tab,c_name,c_value); //这样好查错一些
//应该是楼主的字段格式不一样造成的。比如都是整型,你就直接传入,如果是字符串那c_value就会加单引号。