private void open()
{
string connstring = "Data Source=(local);Initial Catalog=OurShop;User=shihai1991;pwd=shihai315725";
connection = new SqlConnection(connstring);
connection.Open();
}
/// <summary>
/// 关闭数据库
/// </summary>
private void close()
{
connection.Dispose();
connection.Close();
connection = null;
}
/// <summary>
/// 输入SQL命令,得到DataReader对象
/// </summary>
/// <param name="sqlstring"></param>
/// <returns></returns>
public SqlDataReader GetDataRearer(string sqlstring)
{
open();
SqlCommand mycom = new SqlCommand(sqlstring, connection);
SqlDataReader Dr = mycom.ExecuteReader();
return Dr;
}
public DataSet GetDataSet(string sqlstgring)
{
open();
SqlCommand mycom = new SqlCommand(sqlstgring, connection);
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = mycom;
DataSet dataSet = new DataSet();
adapter.Fill(dataSet);
close();
return dataSet;
}
/// <summary>
/// 执行非查询SQL命令
/// </summary>
/// <param name="sqlstring"></param>
/// <returns></returns>
public int ExecuteSQL(string sqlstring)
{
int count = -1;
open();
try
{
SqlCommand cmd = new SqlCommand(sqlstring, connection);
count = cmd.ExecuteNonQuery();
}
catch
{
count = -1;
}
finally
{
close();
}
return count;
}
/// <summary>
/// 输入SQL命令,检查数据表中是否有该数据信息
/// </summary>
/// <param name="sqlstring"></param>
/// <returns></returns>
public int GetdataRow(string sqlstring)
{
int CountRow = 0;
open();
SqlCommand mycom = new SqlCommand(sqlstring, connection);
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = mycom;
DataSet ds = new DataSet();
da.Fill(ds);
ds.CaseSensitive = false;
//取行集合中的元素的总数
CountRow = ds.Tables[0].Rows.Count;
close();
return CountRow;
}
/// <summary>
/// 输入SQL命令,得到DataTable对象
/// </summary>
/// <param name="sqlstring"></param>
/// <returns></returns>
public DataTable GetDataTable(string sqlstring)
{
DataSet ds = GetDataSet(sqlstring);
DataTable dt = new DataTable();
dt = ds.Tables[0];
return dt;
}
/// <summary>
/// 获取单个值
/// </summary>
/// <param name="sqlstring"></param>
/// <returns></returns>
public object GetScalar(string sqlstring)
{
open();
SqlCommand mycom = new SqlCommand(sqlstring, connection);
object result = mycom.ExecuteScalar();
close();
return result;
}
/// <summary>
/// 对整体数据集实施批量处理;一般用于列表等对象
/// </summary>
/// <param name="ds"></param>
/// <param name="sql"></param>
/// <param name="tableName"></param>
/// <returns></returns>
public bool doUpdata(DataSet ds, string sql, string tableName)
{
bool flag = false;
open();
//非强制资源清理,清理非托管资源和不受资源和不受GC控制的资源。Using结束后会隐式的调用Disposable方法
using (SqlDataAdapter da = new SqlDataAdapter(sql, connection))
{
//数据库表一定要有主键列,否则此处无法通过
SqlCommandBuilder builder = new SqlCommandBuilder(da);
try
{
da.Update(ds, tableName);
flag = true;
}
catch (System.Exception e)
{
throw new Exception(e.Message);
}
}
close();
return flag;
}
public ArrayList GetListArray(string sqlstring, int m)
{
//创建ArrayList对象
ArrayList array = new ArrayList();
SqlDataReader dr = GetDataRearer(sqlstring);
while(dr.Read()) //遍历所有的结果集
{
//取到结果集索引的第0列的值并添加到ArrayList对象中
array.Add(dr.GetValue(m));
}
//返回ArrayList对象
return array;
}
}
{
string connstring = "Data Source=(local);Initial Catalog=OurShop;User=shihai1991;pwd=shihai315725";
connection = new SqlConnection(connstring);
connection.Open();
}
/// <summary>
/// 关闭数据库
/// </summary>
private void close()
{
connection.Dispose();
connection.Close();
connection = null;
}
/// <summary>
/// 输入SQL命令,得到DataReader对象
/// </summary>
/// <param name="sqlstring"></param>
/// <returns></returns>
public SqlDataReader GetDataRearer(string sqlstring)
{
open();
SqlCommand mycom = new SqlCommand(sqlstring, connection);
SqlDataReader Dr = mycom.ExecuteReader();
return Dr;
}
public DataSet GetDataSet(string sqlstgring)
{
open();
SqlCommand mycom = new SqlCommand(sqlstgring, connection);
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = mycom;
DataSet dataSet = new DataSet();
adapter.Fill(dataSet);
close();
return dataSet;
}
/// <summary>
/// 执行非查询SQL命令
/// </summary>
/// <param name="sqlstring"></param>
/// <returns></returns>
public int ExecuteSQL(string sqlstring)
{
int count = -1;
open();
try
{
SqlCommand cmd = new SqlCommand(sqlstring, connection);
count = cmd.ExecuteNonQuery();
}
catch
{
count = -1;
}
finally
{
close();
}
return count;
}
/// <summary>
/// 输入SQL命令,检查数据表中是否有该数据信息
/// </summary>
/// <param name="sqlstring"></param>
/// <returns></returns>
public int GetdataRow(string sqlstring)
{
int CountRow = 0;
open();
SqlCommand mycom = new SqlCommand(sqlstring, connection);
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = mycom;
DataSet ds = new DataSet();
da.Fill(ds);
ds.CaseSensitive = false;
//取行集合中的元素的总数
CountRow = ds.Tables[0].Rows.Count;
close();
return CountRow;
}
/// <summary>
/// 输入SQL命令,得到DataTable对象
/// </summary>
/// <param name="sqlstring"></param>
/// <returns></returns>
public DataTable GetDataTable(string sqlstring)
{
DataSet ds = GetDataSet(sqlstring);
DataTable dt = new DataTable();
dt = ds.Tables[0];
return dt;
}
/// <summary>
/// 获取单个值
/// </summary>
/// <param name="sqlstring"></param>
/// <returns></returns>
public object GetScalar(string sqlstring)
{
open();
SqlCommand mycom = new SqlCommand(sqlstring, connection);
object result = mycom.ExecuteScalar();
close();
return result;
}
/// <summary>
/// 对整体数据集实施批量处理;一般用于列表等对象
/// </summary>
/// <param name="ds"></param>
/// <param name="sql"></param>
/// <param name="tableName"></param>
/// <returns></returns>
public bool doUpdata(DataSet ds, string sql, string tableName)
{
bool flag = false;
open();
//非强制资源清理,清理非托管资源和不受资源和不受GC控制的资源。Using结束后会隐式的调用Disposable方法
using (SqlDataAdapter da = new SqlDataAdapter(sql, connection))
{
//数据库表一定要有主键列,否则此处无法通过
SqlCommandBuilder builder = new SqlCommandBuilder(da);
try
{
da.Update(ds, tableName);
flag = true;
}
catch (System.Exception e)
{
throw new Exception(e.Message);
}
}
close();
return flag;
}
public ArrayList GetListArray(string sqlstring, int m)
{
//创建ArrayList对象
ArrayList array = new ArrayList();
SqlDataReader dr = GetDataRearer(sqlstring);
while(dr.Read()) //遍历所有的结果集
{
//取到结果集索引的第0列的值并添加到ArrayList对象中
array.Add(dr.GetValue(m));
}
//返回ArrayList对象
return array;
}
}