using Sqystem.Data;
using System.Data.SqlClient;
using System.Configuration;
//引用一个库Ststem.configuration
//修改根目录的web.config文件
<configuration>//最外层节点
......
<connectionStrings>
<add name="connString" connectionString = "Sqerver=.;DataBase=StudentManage;Uid=sa;Pwd=scale2018@">
</connectionStrings>
......
</configuration>
//数据库通用访问类
class SQLHelper
{
//数据库连接字符串
private static string connString = ConfigurationManager.ConnectionStrings["connString"].ToString();
//写入日志文件
public void WriteLog(string msg)
{
FileStream fs = FileStream("1.log",fileMode.Append);
StreamWriter sw = new StreamWriter(fs);
sw.writeLine(DateTime.Now.ToString()+" "+ msg);
sw.Close();
fs.Close();
}
//数据库更新
public static int Update(string sql)
{
SqlConnection conn = new SqlConnection(connString);
SqlConnection cmd = new SqlCommand(sql,conn);
try
{
conn.Open();
return cmd.ExecuteNoQuery();
}
catch(Exception ex)
{
WriteLog("执行更新时发生异常"+ex.Message);
throw ex;
}
finally
{
conn.Close();
}
}
public static object GetSingleResult(string sql)
{
Sqlconnection conn = new SqlConnection(connString);
SqlCommand cmd = new SqlCommand(sql,conn);
try
{
conn.Open();
return cmd.ExecuteScalar();
}
catch(Exception ex)
{
WriteLog("执行单一结果查询"+ex.message);
throw ex;
}
finally
{
conn.Close();
}
}
//返回结果集
public static SqlDataReader GetReader(string sql)
{
SqlConnection conn = new SqlConnection(connString);
SqlCommand cmd = new SqlCommand(sql,conn);
try
{
conn.Open();
retrun cmd.ExecuteReader(CommandBehavior.CloseConnection);//不能在此关闭连接
}
catch(Exception ex)
{
WriteLog("读取结果集发生异常"+ex.message);
throw ex;
}
}
//带参数的存储过程
public static int Update(string sqlOrProcedureName,SqlParameter[]param,bool isProcedure)
{
SqlConnection conn = new SqlConnection(connString);
SqlConnection cmd = new SqlCommand(sqlOrProcedureName,conn);
if(isProcedure)
{
cmd.CommandType = CommmandType.StoredProcedure;
}
try
{
conn.Open();
cmd.Parameters.AddRang(param);
return cmd.ExecuteNoQuery();
}
catch(Exception ex)
{
WriteLog("执行更新时发生异常"+ex.Message);
throw ex;
}
finally
{
conn.Close();
}
}
}