システムを使用する;
System.Configuration を使用します。
System.Data を使用します。
System.Data.SqlClient を使用します。
System.Collections を使用します。
名前空間 MyCorporation.DepartMent.DataBase
{
/// <概要>
/// 汎用データベース库类
/// </概要>
パブリック クラス データベース
{
プライベート文字列 ConnStr = null;
パブリックデータベース()
{
ConnStr = ConfigurationSettings.AppSettings["ConnStr"];
}
パブリックデータベース(文字列Str)
{
試す
{
this.ConnStr = Str;
}
catch(例外例)
{
元を投げます。
}
}
/// <概要>
/// 接続オブジェクトを返します
/// </概要>
/// <戻り値></戻り値>
public SqlConnection ReturnConn()
{
SqlConnection Conn = 新しい SqlConnection(ConnStr);
Conn.Open();
コンを返します。
}
public void Dispose(SqlConnection Conn)
{
if(Conn!=null)
{
Conn.Close();
Conn.Dispose();
}
GC.Collect();
}
/// <概要>
/// 実行SQL语句
/// </概要>
/// <param name="SQL"></param>
public void RunProc(string SQL)
{
SqlConnection接続;
Conn = 新しい SqlConnection(ConnStr);
Conn.Open();
SqlCommand コマンド ;
Cmd = CreateCmd(SQL, Conn);
試す
{
Cmd.ExecuteNonQuery();
}
キャッチ
{
新しい例外をスローします(SQL);
}
破棄(接続);
戻る;
}
/// <概要>
/// 実行SQL语句がDataReaderを返す
/// </概要>
/// <param name="SQL"></param>
/// <returns>SqlDataReader对オブジェクト.</returns>
public SqlDataReader RunProcGetReader(string SQL)
{
SqlConnection接続;
Conn = 新しい SqlConnection(ConnStr);
Conn.Open();
SqlCommand コマンド ;
Cmd = CreateCmd(SQL, Conn);
SqlDataReader博士;
試す
{
Dr = Cmd.ExecuteReader(CommandBehavior.Default);
}
キャッチ
{
新しい例外をスローします(SQL);
}
//Dispose(Conn);
博士を返します。
}
/// <概要>
/// 生成Command对オブジェクト
/// </概要>
/// <param name="SQL"></param>
/// <param name="Conn"></param>
/// <戻り値></戻り値>
public SqlCommand CreateCmd(string SQL, SqlConnection Conn)
{
SqlCommand コマンド ;
Cmd = new SqlCommand(SQL, Conn);
コマンドを返します。
}
/// <概要>
/// 生成Command对オブジェクト
/// </概要>
/// <param name="SQL"></param>
/// <戻り値></戻り値>
public SqlCommand CreateCmd(string SQL)
{
SqlConnection接続;
Conn = 新しい SqlConnection(ConnStr);
Conn.Open();
SqlCommand コマンド ;
Cmd = new SqlCommand(SQL, Conn);
コマンドを返します。
}
/// <概要>
/// アダプターオブジェクトを返します
/// </概要>
/// <param name="SQL"></param>
/// <param name="Conn"></param>
/// <戻り値></戻り値>
public SqlDataAdapter CreateDa(string SQL)
{
SqlConnection接続;
Conn = 新しい SqlConnection(ConnStr);
Conn.Open();
SqlDataAdapter Da;
Da = 新しい SqlDataAdapter(SQL, Conn);
Daを返します。
}
/// <概要>
/// SQL 句句、DataSet オブジェクトを返す
/// </概要>
/// <param name="句procName">SQL语</param>
/// <param name="prams">DataSet オブジェクト</param>
public DataSet RunProc(string SQL ,DataSet Ds)
{
SqlConnection接続;
Conn = 新しい SqlConnection(ConnStr);
Conn.Open();
SqlDataAdapter Da;
//Da = CreateDa(SQL, Conn);
Da = 新しい SqlDataAdapter(SQL,Conn);
試す
{
Da.Fill(Ds);
}
catch(例外エラー)
{
エラーをスローします。
}
破棄(接続);
D を返します。
}
/// <概要>
/// SQL 句句、DataSet オブジェクトを返す
/// </概要>
/// <param name="句procName">SQL语</param>
/// <param name="prams">DataSet オブジェクト</param>
/// <param name="dataReader">表名</param>
public DataSet RunProc(string SQL ,DataSet Ds,string テーブル名)
{
SqlConnection接続;
Conn = 新しい SqlConnection(ConnStr);
Conn.Open();
SqlDataAdapter Da;
Da = CreateDa(SQL);
試す
{
Da.Fill(Ds,テーブル名);
}
catch(例外例)
{
Exを投げます。
}
破棄(接続);
D を返します。
}
/// <概要>
/// SQL 句句、DataSet オブジェクトを返す
/// </概要>
/// <param name="句procName">SQL语</param>
/// <param name="prams">DataSet オブジェクト</param>
/// <param name="dataReader">表名</param>
public DataSet RunProc(string SQL , DataSet Ds ,int StartIndex ,int PageSize, string tablename )
{
SqlConnection接続;
Conn = 新しい SqlConnection(ConnStr);
Conn.Open();
SqlDataAdapter Da ;
Da = CreateDa(SQL);
試す
{
Da.Fill(Ds, StartIndex, PageSize, テーブル名);
}
catch(例外例)
{
Exを投げます。
}
破棄(接続);
D を返します。
}
/// <概要>
/// データが存在するかどうか
/// </概要>
/// <戻り値></戻り値>
public bool ExistDate(文字列 SQL)
{
SqlConnection接続;
Conn = 新しい SqlConnection(ConnStr);
Conn.Open();
SqlDataReader 博士;
Dr = CreateCmd(SQL,Conn).ExecuteReader();
if (Dr.Read())
{
破棄(接続);
true を返します。
}
それ以外
{
破棄(接続);
false を返します。
}
}
/// <概要>
/// SQL 句の実行結果の最初の列を返します
/// </概要>
/// <returns>文字列</returns>
パブリック文字列ReturnValue(文字列SQL)
{
SqlConnection接続;
Conn = 新しい SqlConnection(ConnStr);
Conn.Open();
文字列の結果。
SqlDataReader 博士;
試す
{
Dr = CreateCmd(SQL,Conn).ExecuteReader();
if (Dr.Read())
{
結果 = Dr[0].ToString();
Dr.Close();
}
それ以外
{
結果 = "";
Dr.Close();
}
}
キャッチ
{
新しい例外をスローします(SQL);
}
破棄(接続);
結果を返します。
}
/// <概要>
/// SQL 句を返します第一列、第二列、
/// </概要>
/// <returns>文字列</returns>
public string ReturnValue(string SQL, int ColumnI)
{
SqlConnection接続;
Conn = 新しい SqlConnection(ConnStr);
Conn.Open();
文字列の結果。
SqlDataReader 博士;
試す
{
Dr = CreateCmd(SQL,Conn).ExecuteReader();
}
キャッチ
{
新しい例外をスローします(SQL);
}
if (Dr.Read())
{
結果 = Dr[ColumnI].ToString();
}
それ以外
{
結果 = "";
}
Dr.Close();
破棄(接続);
結果を返します。
}
/// <概要>
/// 保存中に使用される sql コマンドを生成します。
/// </概要>
/// <param name="procName">存储过程名.</param>
/// <param name="prams">存储过程入パラメータ数组.</param>
/// <returns>sqlcommand オブジェクト.</returns>
public SqlCommand CreateCmd(string procName, SqlParameter[] prams)
{
SqlConnection接続;
Conn = 新しい SqlConnection(ConnStr);
Conn.Open();
SqlCommand Cmd = new SqlCommand(procName, Conn);
Cmd.CommandType = CommandType.StoredProcedure;
if (prams != null)
{
foreach (prams の SqlParameter パラメータ)
{
if(パラメータ != null)
{
Cmd.Parameters.Add(パラメータ);
}
}
}
コマンドを返します。
}
/// <概要>
/// 保存のために SqlCommand オブジェクトを生成します
/// </概要>
/// <param name="procName">存储过程名</param>
/// <param name="prams">存储过程パラメータ</param>
/// <returns>SqlCommand オブジェクト</returns>
private SqlCommand CreateCmd(string procName, SqlParameter[] prams,SqlDataReader Dr)
{
SqlConnection接続;
Conn = 新しい SqlConnection(ConnStr);
Conn.Open();
SqlCommand Cmd = new SqlCommand(procName, Conn);
Cmd.CommandType = CommandType.StoredProcedure;
if (prams != null)
{
foreach (prams の SqlParameter パラメータ)
Cmd.Parameters.Add(パラメータ);
}
Cmd.Parameters.Add(
新しい SqlParameter("ReturnValue", SqlDbType.Int, 4,
ParameterDirection.ReturnValue、false、0、0、
string.Empty、DataRowVersion.Default、null));
コマンドを返します。
}
/// <概要>
/// 运行存储过程、戻ります。
/// </概要>
/// <param name="procName">存储过程名</param>
/// <param name="prams">存储过程パラメータ</param>
/// <param name="dataReader">SqlDataReader对オブジェクト</param>
public void RunProc(string procName, SqlParameter[] prams, SqlDataReader Dr)
{
SqlCommand Cmd = CreateCmd(procName, prams, Dr);
Dr = Cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
戻る;
}
/// <概要>
/// 运行存储过程、戻ります。
/// </概要>
/// <param name="procName">存储过程名</param>
/// <param name="prams">存储过程パラメータ</param>
public string RunProc(string procName, SqlParameter[] prams)
{
SqlDataReader博士;
SqlCommand Cmd = CreateCmd(procName, prams);
Dr = Cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
if(ドクターリード())
{
Dr.GetValue(0).ToString() を返します。
}
それ以外
{
戻る "";
}
}
/// <概要>
/// 実行存储过程、データセットを返します。
/// </概要>
/// <param name="procName">存储过程名.</param>
/// <param name="prams">存储过程入パラメータ数组.</param>
/// <returns>dataset オブジェクト.</returns>
public DataSet RunProc(string procName,SqlParameter[] prams,DataSet Ds)
{
SqlCommand Cmd = CreateCmd(procName,prams);
SqlDataAdapter Da = 新しい SqlDataAdapter(Cmd);
試す
{
Da.Fill(Ds);
}
catch(例外例)
{
Exを投げます。
}
D を返します。
}
}
}