C#操作Access时Parameters集合的使用方法

时间:2022-07-13 17:48:27

按照C#操作Sql Server数据库的方式是不一样的,使用时发现占位符数据会混乱。

查阅相关资料及测试后,总结出这样一套使用方法。


方法:

    public bool TsqlExecute(string tsql, params OleDbParameter[] parameters)
{
bool ok = false;
cmd = new OleDbCommand(tsql, conn);
cmd.CommandType = CommandType.Text; //设置语句解析方式为默认(SQL文本命令)

if (parameters != null) //如果参数集合不为空则进行遍历
{
foreach (OleDbParameter p in parameters)
{
if ((p.Direction == ParameterDirection.Output) && p.Value == null) p.Value = DBNull.Value;
cmd.Parameters.Add(p);
}
}

try
{
conn.Open();
int cou = cmd.ExecuteNonQuery();
if (cou > 0) ok = true;
conn.Close();
}
catch { }
return ok;
}


调用时:

DbData db = new DbData();

OleDbParameter[] pars = new OleDbParameter[] {
new OleDbParameter("@a",a),
new OleDbParameter("@b",b),
new OleDbParameter("@c",c)
};

db.TsqlExecute("update User set PassWord=@a , NickName=@b where Ids = @c", pars);