params SqlParameter[] commandParameters的理解

ExecuteReader(string connectionString, CommandType commandType, string commandText, params SqlParameter[] commandParameters) 



以params 声明的参数是说明参数的个数是可选的,可以为0个或多个。当多个时,以“,”分开传入


一个参数:
ExecuteReader(System.Data.CommandType.Text,"select * from table1 where id =@id",new System.Data.SqlClient.SqlParameter("@id",12));

多个参数:
ExecuteReader(System.Data.CommandType.Text,"select * from table1 where id =@id and name=@name",
new System.Data.SqlClient.SqlParameter("@id",12),new System.Data.SqlClient.SqlParameter("@name","中国"));


可以这样调用
public static int ExecuteNonQuery(SqlConnection connection, CommandType cmdType, string cmdText, params   SqlParameter[] commandParameters)
        {
            //...
        }

SqlParameter   a   =   SqlParameter a = new SqlParameter("@name", "中国");
SqlParameter   b   =   SqlParameter a = new SqlParameter("@name", "中国");
SqlParameter   c   =   SqlParameter a = new SqlParameter("@name", "中国");
SqlParameter   d   =   SqlParameter a = new SqlParameter("@name", "中国");
ExecuteNonQuery(conn,   cmdType,   cmdText,   a,   b,   c,   d);



因为是params 声明的,所以这个参数你可以不填。或传入一个事先设置好的SqlParameter类型的数组。

你可能感兴趣的:(C++,c,C#)