Code Bye

关于C#查询数据库的参数问题,求大神指点

 

             DataTable businfo = new DataTable();
                    lock (Objlocker)
                  {
                    if (con.State != ConnectionState.Open)
                    {
                        con.Open();
                    }
                   
                    string strSQL = “SELECT [IPAddress] FROM [ipinfo] where [V_IpAddress]=@ipaddress”;
                    SqlCommand comm = new SqlCommand(strSQL, con);
                    SqlParameter sp=comm.Parameters.Add (“@ipaddress”,SqlDbType.VarChar);
                    sp.Value =ipaddress;
                    SqlDataAdapter mySqlDA = null;
                    mySqlDA = new SqlDataAdapter(strSQL, con);
                    mySqlDA.Fill(businfo);
                    con.Close();
                }
调试时出现:必须声明标量变量 “@ipaddress”。

5分
你的代码里应该有警告,sp定义了但是未被调用
5分
参考:
/// <summary>
		/// 是否存在该记录
		/// </summary>
		public bool Exists(string f_id)
		{
			StringBuilder strSql=new StringBuilder();
			strSql.Append("select count(1) from t_irm_bodypartsdata");
			strSql.Append(" where f_id=@f_id ");
			SqlParameter[] parameters = {
					new SqlParameter("@f_id", SqlDbType.VarChar,40)			};
			parameters[0].Value = f_id;

			return DbHelperSQL.Exists(strSql.ToString(),parameters);
		}
5分
变量需要先声明 后使用。。。
25分
你的参数是加到Command上了,但是 SqlDataAdapter 根本没有用到Command

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明关于C#查询数据库的参数问题,求大神指点