不鸣则已

海阔凭鱼跃,天高任鸟飞!

首页 新随笔 联系 订阅 管理

这个问题很常见 

在数据库连接的时候  没有将参数的传入到 数据库查询语句中 

 

以 sql server 数据库为例:

 

1 public static DataTable ExecuteQuerysql(string sql, params SqlParameter[] pams)
2 {
3 return ExecuteQuery(sql, CommandType.Text,pams);
4 }

 

 1 private static DataTable ExecuteQuery(string sql, CommandType ct, params SqlParameter[] pams)
 2         {
 3             using (SqlConnection con = new SqlConnection(str))
 4             {
 5                 using (SqlCommand com = new SqlCommand(sql, con))
 6                 {
 7                     com.Parameters.AddRange(pams);
 8                     com.CommandType = ct;
 9                     using (SqlDataAdapter sda = new SqlDataAdapter(com))
10                     {
11                         DataTable dt = new DataTable();
12                         sda.Fill(dt);
13                         return dt;
14                     }
15                 }
16             }
17         }

 

如果 在将ExcuteQuery重新封装的时候  把参数忘传了 就会出现这样的错误

posted on 2013-09-23 22:10  唐群  阅读(1341)  评论(0编辑  收藏  举报