今天天在调试错误的时候,存储过程中有个查询数据库语句错误,这个错误在第一次机房收费系统中我们就经常遇到,就是下图这个错误。
这个错误,我们可以很容易的想到是数据库的语句问题,那么关键是要怎么改正呢。
SET @sql = 'select * from '+ @getName + ’ where '+@comBox1+@comBox4+char(39)+@txtBox1+char(39)
就是上图那样,等号的左右两端都要有空格,不然就会报错。
还有一个错误
就是我们在使用存储过程的时候,D层的查询语句和不使用存储过程的不一样,
//使用存储过程的D层
DataTable dt = SQLHelper.ExecuteQuery(sql, sqlparams, CommandType.StoredProcedure);
//不使用存储过程的D层
DataTable table = SQLHelper.ExecuteGetQuery(sql, sqlparams, CommandType.Text);