在Access数据库中创建查询过程
关掉这个对话框,右键弹出菜单中选择SQL视图
在这里用SQl语句编辑查询
完了关闭界面弹出保存查询
在C#中就可能像SQL数据库一样用储存过程来操作了.
自己封装的函数一个不带参数列表的,一个带参数列表
/// <summary>
/// 用储存过程查询
/// </summary>
/// <param name="cuCunGocen"></param>
/// <param name="cmdType"></param>
/// <returns></returns>
public DataSet GetDataSet(string cuCunGouCen, CommandType cmdType)
{
DataSet ds = new DataSet();
MyCommand cmd = new MyCommand(cuCunGouCen, conn);
cmd.CommandType = cmdType;
MyDataAdapter da = new MyDataAdapter(cmd);
da.Fill(ds);
return ds;
}
/// <summary>
/// 用储存过程,参数列表查询表
/// </summary>
/// <param name="cuCunGouCen"></param>
/// <param name="cmdType"></param>
/// <param name="pars"></param>
/// <returns></returns>
public DataSet GetDataSet(string cuCunGouCen,CommandType cmdType,MyParameter[] pars)
{
DataSet ds = new DataSet();
MyCommand cmd = new MyCommand(cuCunGouCen, conn);
cmd.CommandType = cmdType;
cmd.Parameters.Clear();
cmd.Parameters.AddRange(pars);
MyDataAdapter da = new MyDataAdapter();
da.Fill(ds);
return ds;
}
在程序中调用:
MyDBAdo ado = new MyDBAdo();
ado.OpenConn(connString);
DataSet ds = ado.GetDataSet("SelectAll", CommandType.StoredProcedure);
ado.CloseConn();
dataGridView1.DataSource = ds.Tables[0];
//如果用参数列表就要添加参数列表数组
OleDbParameter[] pars =
{
new OleDbParameter("@name",stu.name),
new OleDbParameter("@sex",stu.sex),
new OleDbParameter("@age",stu.age),
new OleDbParameter("@tel",stu.tel),
new OleDbParameter("@fenzu",stu.fenzu),
new OleDbParameter("@birthday",stu.birthday),
new OleDbParameter("@qq",stu.qq),
new OleDbParameter("@addess",stu.addess),
new OleDbParameter("@beizu",stu.beizu),
new OleDbParameter("@picbytes",stu.picBytes),
new OleDbParameter("@mid",treeView1.SelectedNode.Name)
};