能不能给CommandText属性赋值为一个变量,调用函数传入这个变量的参数?

解决方案 »

  1.   

    没看明白啊 lz
    是这个意思吗?你可以在初始化时string sqlstr = string.Empty;
    xxx.CommandText= sqlstr;然后你在方法里对这个sqlstr赋值就好了啊
      

  2.   

    可以,如下:            SqlCommand cmd = new SqlCommand();
                cmd.CommandType = CommandType.Text;
                cmd.CommandText = "SELECT * FROM YourTable WHERE City=@Value";
                cmd.Parameters.Add("@Value", SqlDbType.VarChar, 40).Value = "北京";
      

  3.   

    如果是sql语句中的参数 那么
    public void CreateSqlCommand(SqlConnection myConnection,string queryString, SqlParameter[] paramArray) 
    {
        SqlCommand command = new SqlCommand(queryString, myConnection);
        command.CommandText = 
            "SELECT CustomerID, CompanyName FROM Customers " 
            + "WHERE Country = @Country AND City = @City";    
        command.Parameters.Add(paramArray);    for (int j=0; j<paramArray.Length; j++)
        {
            command.Parameters.Add(paramArray[j]) ;
        }
    }
      

  4.   

    public SqlCommand SetCommandText(SqlCommand sqlCmd, string sqlCmdText)
    {
        sqlCmd.CommandText = sqlCmdText;
        return sqlCmd;
    }
      

  5.   

    建议使用存储过程,
    1,能提高效率
    2,防止SQL注入攻击