通用的DB/SQLhelp方法
第一种:
//获取连接字符串
private static readonly string connStr = System.Configuration.ConfigurationManager.ConnectionStrings["connstr"].ConnectionString;
/// <summary>
/// 登录的方法,查询的是第一行数据
/// </summary>
/// <param name="sql">sql查询语句</param>
/// <param name="param">查询用的参数</param>
/// <returns>返回值是第一行第一列的值</returns>
public static object ExecuteScalar(string sql, params SqlParameter[] param)
{
//连接数据库
using (SqlConnection sqlConn = new SqlConnection(connStr))
{
//打开数据库
sqlConn.Open();
//判断是否打开数据库,如果没有打开数据库则打开数据库
if (sqlConn.State == ConnectionState.Closed)
{
//打开数据库
sqlConn.Open();
}
//创建sql命令对象
using (SqlCommand sqlCmd = new SqlCommand(sql, sqlConn))
{
//添加参数化查询的对应关系
//判断是否有参数
if (param != null)
{
sqlCmd.Parameters.AddRange(param);
}
//返回值是第一行第一列的值
return sqlCmd.ExecuteScalar();
}
}
}
/// <summary>
/// 执行查询
/// </summary>
/// <param name="sql">查询语句</param>
/// <param name="param">查询语句的参数</param>
/// <returns>查询的数据表</returns>
public static DataTable ExecQuery(string sql, params SqlParameter[] param)
{
//连接数据库
using (SqlConnection sqlConn = new SqlConnection(connStr))
{
//判断是否打开数据库,如果没有打开数据库则打开数据库
if (sqlConn.State == ConnectionState.Closed)
{
//打开数据库
sqlConn.Open();
}
//创建sql命令对象
using (SqlCommand sqlCmd = new SqlCommand(sql, sqlConn))
{
//判断是否有参数
if (param != null)
{
sqlCmd.Parameters.AddRange(param);
}
//对sql语句查询到的数据进行传输
SqlDataAdapter SqlDataAdapter = new SqlDataAdapter(sqlCmd);
//实例化一张表
DataTable table = new DataTable();
//将从数据库中查询到的数据填充到数据表中
SqlDataAdapter.Fill(table);
//返回这张表
return table;
}
}
}
/// <summary>
/// 执行增删改
/// </summary>
/// <param name="sql">执行的SQL语句</param>
/// <param name="param">sql语句的 参数</param>
/// <returns>是否执行成功,true则成功,false失败</returns>
public static bool ExecNonQuery(string sql, params SqlParameter[] param)
{
//连接数据库
using (SqlConnection sqlConn = new SqlConnection(connStr))
{
//打开数据库
sqlConn.Open();
//判断是否打开数据库,如果没有打开数据库则打开数据库
if (sqlConn.State == ConnectionState.Closed)
{
//打开数据库
sqlConn.Open();
}
//创建sql命令对象
using (SqlCommand sqlCmd = new SqlCommand(sql, sqlConn))
{
//添加参数化查询的对应关系
//判断是否有参数
if (param != null)
{
sqlCmd.Parameters.AddRange(param);
}
//定义一个变量接受修改的行数
int res = sqlCmd.ExecuteNonQuery();
//如果大于0,sql语句执行成功,小于0失败
if (res > 0)
{
return true;
}
else
{
return false;
}
}
}
}
第二种:
public int ExeQCommand(string sql, params SqlParameter[] pams)
{
try
{
string constr = "Data Source=.;Initial Catalog=Logistics;Integrated Security=True";
using (SqlConnection conn = new SqlConnection(constr))
{
conn.Open();
using (SqlCommand cmd = new SqlCommand(sql, conn))
{
if (pams != null|| pams.Length>0)
{
cmd.Parameters.AddRange(pams);
}
return cmd.ExecuteNonQuery();
}
}
}
catch (Exception ex)
{
throw ex;
}
}
public int ExeScalerCommand(string sql, params SqlParameter[] pams)
{
try
{
string constr = "Data Source=.;Initial Catalog=Logistics;Integrated Security=True";
using (SqlConnection conn = new SqlConnection(constr))
{
conn.Open();
using (SqlCommand cmd = new SqlCommand(sql, conn))
{
if (pams != null || pams.Length > 0)
{
cmd.Parameters.AddRange(pams);
}
return Convert.ToInt32(cmd.ExecuteScalar());
}
}
}
catch (Exception ex)
{
throw ex;
}
}
public SqlDataReader ExeReaderCommand(string sql, params SqlParameter[] pams)
{
try
{
string constr = "Data Source=.;Initial Catalog=Logistics;Integrated Security=True";
using (SqlConnection conn = new SqlConnection(constr))
{
conn.Open();
using (SqlCommand cmd = new SqlCommand(sql, conn))
{
if (pams != null || pams.Length > 0)
{
cmd.Parameters.AddRange(pams);
}
return cmd.ExecuteReader();
}
}
}
catch (Exception ex)
{
throw ex;
}
}
public DataTable Adapter(string sql, params SqlParameter[] pams)
{
try
{
//配置连接字段
string constr = "Data Source=.;Initial Catalog=Logistics;Integrated Security=True";
//连接数据库
using (SqlConnection conn = new SqlConnection(constr))
{
//打开数据库
conn.Open();
//读取数据源并操作
using (SqlDataAdapter da = new SqlDataAdapter(sql, conn))
{
//如果变量和长度都不为空
if (pams != null || pams.Length > 0)
{
//那就添加sql语句
da.SelectCommand.Parameters.AddRange(pams);
}
//创建暂存区
DataSet ds = new DataSet();
//把数据填充到dataset
da.Fill(ds);
//返回表中的第一行
return ds.Tables[0];
}
}
}
//抛出异常
catch (Exception ex)
{
throw ex;
}
}
不懂的私聊博主!博主一一讲解!