110,533
社区成员
发帖
与我相关
我的任务
分享
/// <summary>
/// 填充一个数据集对象并返回之
/// </summary>
/// <param name="cmdText">数据库命令字符串</param>
/// <param name="cmdType">命令执行方式</param>
/// <param name="ParametersList">参数</param>
/// <returns>数据集对象</returns>
private DataSet GetDataSet(string cmdText, CommandType cmdType=CommandType.Text, Dictionary<string, object> ParametersList)
{
DataSet ds = new DataSet();
using (DbConnection conn = provider.CreateConnection())
{
var cmd = conn.CreateCommand();
PrepareCommand(conn, cmd, cmdText, cmdType, ParametersList);
using (DbDataAdapter da = provider.CreateDataAdapter())
{
da.SelectCommand = cmd;
try
{
da.Fill(ds);
return ds;
}
catch (Exception ex)
{
WriteErrorLog(ex, cmdText, ParametersList);
throw new Exception(ex.Message, ex);
}
}
}
return ds;
}
引用举例:
Dictionary<string, object> ParametersList = new Dictionary<string, object>();
ParametersList.Add("john", (object)"male");
string sql = @"insert into 读者 values(@Name,@Sex)";
DataSet ds = new DataSet();
ds = Tool.SqlHelper.GetDataSet(sql,CommandType.Text, ParametersList);
//
// 摘要:
// 指定如何解释命令字符串。
public enum CommandType
{
//
// 摘要:
// SQL 文本命令。(默认。)
Text = 1,
//
// 摘要:
// 存储过程的名称。
StoredProcedure = 4,
//
// 摘要:
// 表的名称。
TableDirect = 512
}
ParametersList是Sql参数字典