关于sqlparameter加参数的问题

来源:百度知道 编辑:UC知道 时间:2024/06/30 21:23:16
public SqlParameter MakeParam(string ParamName, SqlDbType DbType, Int32 Size, ParameterDirection Direction, object Value)
{
SqlParameter param;

if (Size > 0)
param = new SqlParameter(ParamName, DbType, Size);
else
param = new SqlParameter(ParamName, DbType);

param.Direction = Direction;
if (!(Direction == ParameterDirection.Output && Value == null))
param.Value = Value;
return param;
}

private SqlDataAdapter CreateDataAdaper(string procName, SqlParameter[] prams)
{
this.Open();
SqlDataAdapter dap = new SqlDataAdapter(procName, con);
dap.SelectCommand.CommandType = CommandType.Text; //执行类型:命令文本
if (prams != null)
{
foreach (SqlParameter parameter in prams)
dap.SelectCommand.Parameters.Add(parameter);

函数重载一般都是这样实现的:

function1(int x,int y)
{
...
}

function1(int x)
{
function1(x,0);
}

function1()
{
function1(0,0);
}
调用参数少的省事,但多一次函数调用,多压一次栈.
一般要不是在大型的循环里没人计较这个的
不过养成对性能时刻警惕的习惯还是好的

new SqlParameter(@courseid,SqlDbType.UniqueIdentifier,16),
///以下照上.
new SqlParameter(PARA_COURSE_NAME,SqlDbType.VarChar,50),
new SqlParameter(PARA_TRAINED_OBJECT,SqlDbType.VarChar,50),
new SqlParameter(PARA_TRAINED_FORM,SqlDbType.VarChar,520),
new SqlParameter(PARA_RECOMMEND_AGENCY,SqlDbType.VarChar,520),
new SqlParameter(PARA_TRAIN_BUDGET,SqlDbType.VarChar,50),
new SqlParameter(PARA_ARRANGE_TIME,SqlDbType.VarChar,50),
new SqlParameter(PARA_TRAIN_OBJECTIVE,SqlDbType.VarChar,50),
new SqlParameter(PARA_FUNDING_REQUIREMENT,SqlDbType.VarChar,50),