sqlparameter的用法介绍
sqlparameter的用法介绍sqlparameter
命名空间: System.Data.SqlClient
程序集: System.Data(在 system.data.dll 中)
构造函数
public SqlParameter (
string parameterName,
SqlDbType dbType,
int size,
ParameterDirection direction,
byte precision,
byte scale,
string sourceColumn,
DataRowVersion sourceVersion,
bool sourceColumnNullMapping,
Object value,
string xmlSchemaCollectionDatabase,
string xmlSchemaCollectionOwningSchema,
string xmlSchemaCollectionName
)
sqlparameter参数说明
parameterName
要映射的参数的名称。
dbType
SqlDbType 值之一。
size
参数的长度。
direction
ParameterDirection 值之一。
precision
要将 Value 解析为的小数点左右两侧的总位数。
scale
要将 Value 解析为的总小数位数。
sourceColumn
源列的名称。
sourceVersion
DataRowVersion 值之一。
sourceColumnNullMapping
如果源列可为空,则为 true;如果不可为空,则为 false。
value
一个 Object,它是 SqlParameter 的值。
xmlSchemaCollectionDatabase
此 XML 实例的架构集合所在的数据库的名称。
xmlSchemaCollectionOwningSchema
包含此 XML 实例的架构集合的关系架构。
xmlSchemaCollectionName
此参数的架构集合的名称。
sqlparameter常见的方法
Add方法
SqlParameter sp = new SqlParameter("@name", "Pudding");
cmd.Parameters.Add(sp);
sp = new SqlParameter("@ID", "1");
cmd.Parameters.Add(sp);
AddRange方法
SqlParameter[] paras = new SqlParameter[] { new SqlParameter("@name", "Pudding"), new SqlParameter("@ID", "1") };
cmd.Parameters.AddRange(paras);
完整实例
//封装SqlParameter 一次性添加一行sql参数
public static SqlParameter AddParameter(string parameterName, object parameterValue, SqlDbType dbType, int parameterSize, ParameterDirection Direction)
{
SqlParameter par = new SqlParameter();
par.ParameterName = parameterName;
par.Value = parameterValue;
par.Direction = Direction;
par.SqlDbType = dbType;
if (parameterSize > 0) { par.Size = parameterSize; }
return par;
}
public static SqlParameter AddInParameter(string parameterName, object parameterValue, SqlDbType dbType, int parameterSize)
{
return AddParameter(parameterName, parameterValue, dbType, parameterSize, ParameterDirection.Input);
}
public static SqlParameter AddInParameter(string parameterName, object parameterValue, SqlDbType dbType)
{
return AddParameter(parameterName, parameterValue, dbType, 0, ParameterDirection.Input);
}
public static SqlParameter AddOutParameter(string parameterName, SqlDbType dbType)
{
return AddParameter(parameterName, DBNull.Value, dbType, 0, ParameterDirection.Output);
}
调用:
public DataSet GetPageList2005(string SelectList,string TableSource,int PageSize,int PageIndex,string strWhere,string OrderExpression,refint TotalRecord)
{
SqlParameter[]parameters={
DbHelperSQL.AddInParameter("@ReFieldsStr",SelectList,SqlDbType.VarChar,200),
DbHelperSQL.AddInParameter("@TableName", TableSource,SqlDbType.VarChar,50),
DbHelperSQL.AddInParameter("@WhereString",strWhere,SqlDbType.VarChar,500),
DbHelperSQL.AddInParameter("@OrderString", OrderExpression,SqlDbType.VarChar,200),
DbHelperSQL.AddInParameter("@PageSize",PageSize,SqlDbType.Int),
DbHelperSQL.AddInParameter("@PageIndex",PageIndex,SqlDbType.Int),
DbHelperSQL.AddOutParameter("@TotalRecord",SqlDbType.Int)
};
DataSet tmpds = DbHelperSQL.RunProcedure("GetPageList2005", parameters, "ds_"+ TableSource);
TotalRecord =int.Parse(parameters[6].Value.ToString());
return tmpds;
}