using System;
using System.Configuration;
using System.Web;
using System.Data.SqlClient ;
using System.Data;
namespace RFID.PublicClass.DataBase
{
/// <summary>
/// SqlDB 的摘要说明。
/// </summary>
public class SqlDB
{
private const string CONKEY = "SqlConnStr";
private SqlConnection SqlConn=null;
//HttpContext.Current
/// <summary>
/// 构造函数
/// </summary>
public SqlDB()
{
try
{
string ConnStr="server=202.200.119.111;database=RFID;uid=sa;pwd=sa";
SqlConn = new SqlConnection(ConnStr);
SqlConn.Open ();
}
catch
{
}
}
/// <summary>
/// 析构函数
/// </summary>
~SqlDB()
{
CloseConn();
}
/// <summary>
/// 返回Connection对象
/// </summary>
/// <returns></returns>
public SqlConnection GetConnection()
{
return(SqlConn);
}
/// <summary>
/// 返回Command对象
/// </summary>
/// <param name="strsql"></param>
/// <returns></returns>
public SqlCommand GetCommand(string strsql)
{
try
{
SqlCommand SqlComm=new SqlCommand( strsql, SqlConn);
return(SqlComm);
}
catch
{
return(null);
}
}
/// <summary>
///返回DataAdapter对象
/// </summary>
/// <param name="strsql"></param>
/// <returns></returns>
public SqlDataAdapter GetDataAdapter(string strsql)
{
SqlDataAdapter adp = null;
try
{
adp= new SqlDataAdapter(strsql, SqlConn);
return(adp);
}
catch
{
adp = null;
return(adp);
}
}
/// <summary>
/// 返回DataReader对象
/// </summary>
/// <param name="strsql"></param>
/// <returns></returns>
public SqlDataReader GetDataReader( string strsql)
{
SqlCommand Comm = null;
SqlDataReader reader;
Comm = GetCommand(strsql);
try
{
reader = Comm.ExecuteReader();
}
catch
{
reader = null;
}
return(reader);
}
/// <summary>
/// 执行SQL,返回结果值;
/// </summary>
/// <param name="strsql"></param>
/// <returns></returns>
public string GetDataValue(string strsql)
{ try
{
SqlCommand Comm;
Comm=GetCommand(strsql);
return(Comm.ExecuteScalar().ToString());
}
catch
{
return("");
}
}
/// <summary>
/// 返回DataSet
/// </summary>
/// <param name="strsql"></param>
/// <param name="datasetname"></param>
/// <returns></returns>
public DataSet GetDataSet(string strsql, string datasetname)
{
SqlDataAdapter Adpt;
DataSet dsData= new DataSet() ;
Adpt = GetDataAdapter(strsql);
try
{
Adpt.Fill(dsData, datasetname);
}
catch
{
dsData=null;
}
Adpt.Dispose ();
return (dsData);
}
/// <summary>
/// 执行SQL插入、更新、删除操作
/// </summary>
/// <param name="strsql"></param>
/// <returns></returns>
public bool Execute(string strsql)
{
SqlCommand Comm;
Comm = GetCommand(strsql);
try
{
Comm.ExecuteNonQuery();
return(true);
}
catch
{
return(false);
}
}
/// <summary>
///
/// </summary>
/// <param name="strsql"></param>
/// <param name="Parameters"></param>
/// <param name="DataByte"></param>
/// <returns></returns>
public bool Execute(string strsql,string Parameters,byte [] DataByte)
{
SqlCommand Comm;
Comm = GetCommand(strsql);
try
{
Comm.Parameters.Add(Parameters, DataByte);
Comm.ExecuteNonQuery();
return(true);
}
catch
{
return(false);
}
}
//一种执行存储过程的方法
public bool Execute(string StorageName,string[][] Params)
{ SqlCommand comm=new SqlCommand();
comm.Connection = SqlConn;
comm.CommandType=CommandType.StoredProcedure;
comm.CommandText=StorageName;
try
{
int count = Params.Length;
for(int i=0;i<count;i++)
{
comm.Parameters.Add(Params[i][0],Params[i][1]).Value = Params[i][2];
}
comm.ExecuteNonQuery();
return(true);
}
catch
{return (false);
}
}
//另外一种执行存储过程的方法
public bool ExecutePro(string StorageName,SqlParameter[] paras)
{
SqlCommand comm = new SqlCommand();
comm.Connection = SqlConn;
comm.CommandText = StorageName;
comm.CommandType = CommandType.StoredProcedure;
try
{
foreach(SqlParameter para in paras)
{
comm.Parameters.Add(para);
}
comm.ExecuteNonQuery();
comm.Parameters.Clear();
comm.Dispose();
comm = null;
return(true);
}
catch(Exception ex)
{ string err=ex.Message;
return (false);
}
}
public void CloseConn()
{
try
{
if(SqlConn.ConnectionString !=null)
{
SqlConn.Close ();
SqlConn.Dispose ();
}
}
catch
{ }
}
}
}