【tronic】為ASP.NET封裝的SQL資料庫訪問類
using System;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Collections;
namespace MyCorporation.DepartMent.DataBase
{
///
/// 通用資料庫類
///
public class DataBase
{
private string ConnStr = null;
public DataBase()
{
ConnStr = ConfigurationSettings.AppSettings["ConnStr"];
}
public DataBase(string Str)
{
try
{
this.ConnStr = Str;
}
catch(Exception ex)
{
throw ex;
}
}
///
/// 返回connection物件
///
///
public SqlConnection ReturnConn()
{
SqlConnection Conn = new SqlConnection(ConnStr);
Conn.Open();
return Conn;
}
public void Dispose(SqlConnection Conn)
{
if(Conn!=null)
{
Conn.Close();
Conn.Dispose();
}
GC.Collect();
}
///
/// 執行SQL語句
///
///
public void RunProc(string SQL)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlCommand Cmd ;
Cmd = CreateCmd(SQL, Conn);
try
{
Cmd.ExecuteNonQuery();
}
catch
{
throw new Exception(SQL);
}
Dispose(Conn);
return;
}
///
/// 執行SQL語句返回DataReader
///
///
///SqlDataReader物件.
public SqlDataReader RunProcGetReader(string SQL)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlCommand Cmd ;
Cmd = CreateCmd(SQL, Conn);
SqlDataReader Dr;
try
{
Dr = Cmd.ExecuteReader(CommandBehavior.Default);
}
catch
{
throw new Exception(SQL);
}
//Dispose(Conn);
return Dr;
}
///
/// 生成Command物件
///
///
///
///
public SqlCommand CreateCmd(string SQL, SqlConnection Conn)
{
SqlCommand Cmd ;
Cmd = new SqlCommand(SQL, Conn);
return Cmd;
}
///
/// 生成Command物件
///
///
///
public SqlCommand CreateCmd(string SQL)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlCommand Cmd ;
Cmd = new SqlCommand(SQL, Conn);
return Cmd;
}
///
/// 返回adapter物件
///
///
///
///
public SqlDataAdapter CreateDa(string SQL)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlDataAdapter Da;
Da = new SqlDataAdapter(SQL, Conn);
return Da;
}
///
/// 執行SQL語句,返回DataSet物件
///
/// SQL語句
/// DataSet物件
public DataSet RunProc(string SQL ,DataSet Ds)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlDataAdapter Da;
//Da = CreateDa(SQL, Conn);
Da = new SqlDataAdapter(SQL,Conn);
try
{
Da.Fill(Ds);
}
catch(Exception Err)
{
throw Err;
}
Dispose(Conn);
return Ds;
}
///
/// 執行SQL語句,返回DataSet物件
///
/// SQL語句
/// DataSet物件
/// 表名
public DataSet RunProc(string SQL ,DataSet Ds,string tablename)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlDataAdapter Da;
Da = CreateDa(SQL);
try
{
Da.Fill(Ds,tablename);
}
catch(Exception Ex)
{
throw Ex;
}
Dispose(Conn);
return Ds;
}
///
/// 執行SQL語句,返回DataSet物件
///
/// SQL語句
/// DataSet物件
/// 表名
public DataSet RunProc(string SQL , DataSet Ds ,int StartIndex ,int PageSize, string tablename )
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlDataAdapter Da ;
Da = CreateDa(SQL);
try
{
Da.Fill(Ds, StartIndex, PageSize, tablename);
}
catch(Exception Ex)
{
throw Ex;
}
Dispose(Conn);
return Ds;
}
///
/// 檢驗是否存在資料
///
///
public bool ExistDate(string SQL)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlDataReader Dr ;
Dr = CreateCmd(SQL,Conn).ExecuteReader();
if (Dr.Read())
{
Dispose(Conn);
return true;
}
else
{
Dispose(Conn);
return false;
}
}
///
/// 返回SQL語句執行結果的第一行第一列
///
///字串
public string ReturnValue(string SQL)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
string result;
SqlDataReader Dr ;
try
{
Dr = CreateCmd(SQL,Conn).ExecuteReader();
if (Dr.Read())
{
result = Dr[0].ToString();
Dr.Close();
}
else
{
result = "";
Dr.Close();
}
}
catch
{
throw new Exception(SQL);
}
Dispose(Conn);
return result;
}
///
/// 返回SQL語句第一列,第ColumnI列,
///
///字串
public string ReturnValue(string SQL, int ColumnI)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
string result;
SqlDataReader Dr ;
try
{
Dr = CreateCmd(SQL,Conn).ExecuteReader();
}
catch
{
throw new Exception(SQL);
}
if (Dr.Read())
{
result = Dr[ColumnI].ToString();
}
else
{
result = "";
}
Dr.Close();
Dispose(Conn);
return result;
}
///
/// 生成一個儲存過程使用的sqlcommand.
///
/// 儲存過程名.
/// 儲存過程入引數組.
///sqlcommand物件.
public SqlCommand CreateCmd(string procName, SqlParameter[] prams)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlCommand Cmd = new SqlCommand(procName, Conn);
Cmd.CommandType = CommandType.StoredProcedure;
if (prams != null)
{
foreach (SqlParameter parameter in prams)
{
if(parameter != null)
{
Cmd.Parameters.Add(parameter);
}
}
}
return Cmd;
}
///
/// 為儲存過程生成一個SqlCommand物件
///
/// 儲存過程名
/// 儲存過程引數
///SqlCommand物件
private SqlCommand CreateCmd(string procName, SqlParameter[] prams,SqlDataReader Dr)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlCommand Cmd = new SqlCommand(procName, Conn);
Cmd.CommandType = CommandType.StoredProcedure;
if (prams != null)
{
foreach (SqlParameter parameter in prams)
Cmd.Parameters.Add(parameter);
}
Cmd.Parameters.Add(
new SqlParameter("ReturnValue", SqlDbType.Int, 4,
ParameterDirection.ReturnValue, false, 0, 0,
string.Empty, DataRowVersion.Default, null));
return Cmd;
}
///
/// 執行儲存過程,返回.
///
/// 儲存過程名
/// 儲存過程引數
/// SqlDataReader物件
public void RunProc(string procName, SqlParameter[] prams, SqlDataReader Dr)
{
SqlCommand Cmd = CreateCmd(procName, prams, Dr);
Dr = Cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
return;
}
///
/// 執行儲存過程,返回.
///
/// 儲存過程名
/// 儲存過程引數
public string RunProc(string procName, SqlParameter[] prams)
{
SqlDataReader Dr;
SqlCommand Cmd = CreateCmd(procName, prams);
Dr = Cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
if(Dr.Read())
{
return Dr.GetValue(0).ToString();
}
else
{
return "";
}
}
///
/// 執行儲存過程,返回dataset.
///
/// 儲存過程名.
/// 儲存過程入引數組.
///dataset物件.
public DataSet RunProc(string procName,SqlParameter[] prams,DataSet Ds)
{
SqlCommand Cmd = CreateCmd(procName,prams);
SqlDataAdapter Da = new SqlDataAdapter(Cmd);
try
{
Da.Fill(Ds);
}
catch(Exception Ex)
{
throw Ex;
}
return Ds;
}
}
}
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Collections;
namespace MyCorporation.DepartMent.DataBase
{
///
/// 通用資料庫類
///
public class DataBase
{
private string ConnStr = null;
public DataBase()
{
ConnStr = ConfigurationSettings.AppSettings["ConnStr"];
}
public DataBase(string Str)
{
try
{
this.ConnStr = Str;
}
catch(Exception ex)
{
throw ex;
}
}
///
/// 返回connection物件
///
///
public SqlConnection ReturnConn()
{
SqlConnection Conn = new SqlConnection(ConnStr);
Conn.Open();
return Conn;
}
public void Dispose(SqlConnection Conn)
{
if(Conn!=null)
{
Conn.Close();
Conn.Dispose();
}
GC.Collect();
}
///
/// 執行SQL語句
///
///
public void RunProc(string SQL)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlCommand Cmd ;
Cmd = CreateCmd(SQL, Conn);
try
{
Cmd.ExecuteNonQuery();
}
catch
{
throw new Exception(SQL);
}
Dispose(Conn);
return;
}
///
/// 執行SQL語句返回DataReader
///
///
///
public SqlDataReader RunProcGetReader(string SQL)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlCommand Cmd ;
Cmd = CreateCmd(SQL, Conn);
SqlDataReader Dr;
try
{
Dr = Cmd.ExecuteReader(CommandBehavior.Default);
}
catch
{
throw new Exception(SQL);
}
//Dispose(Conn);
return Dr;
}
///
/// 生成Command物件
///
///
///
///
public SqlCommand CreateCmd(string SQL, SqlConnection Conn)
{
SqlCommand Cmd ;
Cmd = new SqlCommand(SQL, Conn);
return Cmd;
}
///
/// 生成Command物件
///
///
///
public SqlCommand CreateCmd(string SQL)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlCommand Cmd ;
Cmd = new SqlCommand(SQL, Conn);
return Cmd;
}
///
/// 返回adapter物件
///
///
///
///
public SqlDataAdapter CreateDa(string SQL)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlDataAdapter Da;
Da = new SqlDataAdapter(SQL, Conn);
return Da;
}
///
/// 執行SQL語句,返回DataSet物件
///
/// SQL語句
/// DataSet物件
public DataSet RunProc(string SQL ,DataSet Ds)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlDataAdapter Da;
//Da = CreateDa(SQL, Conn);
Da = new SqlDataAdapter(SQL,Conn);
try
{
Da.Fill(Ds);
}
catch(Exception Err)
{
throw Err;
}
Dispose(Conn);
return Ds;
}
///
/// 執行SQL語句,返回DataSet物件
///
/// SQL語句
/// DataSet物件
/// 表名
public DataSet RunProc(string SQL ,DataSet Ds,string tablename)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlDataAdapter Da;
Da = CreateDa(SQL);
try
{
Da.Fill(Ds,tablename);
}
catch(Exception Ex)
{
throw Ex;
}
Dispose(Conn);
return Ds;
}
///
/// 執行SQL語句,返回DataSet物件
///
/// SQL語句
/// DataSet物件
/// 表名
public DataSet RunProc(string SQL , DataSet Ds ,int StartIndex ,int PageSize, string tablename )
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlDataAdapter Da ;
Da = CreateDa(SQL);
try
{
Da.Fill(Ds, StartIndex, PageSize, tablename);
}
catch(Exception Ex)
{
throw Ex;
}
Dispose(Conn);
return Ds;
}
///
/// 檢驗是否存在資料
///
///
public bool ExistDate(string SQL)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlDataReader Dr ;
Dr = CreateCmd(SQL,Conn).ExecuteReader();
if (Dr.Read())
{
Dispose(Conn);
return true;
}
else
{
Dispose(Conn);
return false;
}
}
///
/// 返回SQL語句執行結果的第一行第一列
///
///
public string ReturnValue(string SQL)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
string result;
SqlDataReader Dr ;
try
{
Dr = CreateCmd(SQL,Conn).ExecuteReader();
if (Dr.Read())
{
result = Dr[0].ToString();
Dr.Close();
}
else
{
result = "";
Dr.Close();
}
}
catch
{
throw new Exception(SQL);
}
Dispose(Conn);
return result;
}
///
/// 返回SQL語句第一列,第ColumnI列,
///
///
public string ReturnValue(string SQL, int ColumnI)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
string result;
SqlDataReader Dr ;
try
{
Dr = CreateCmd(SQL,Conn).ExecuteReader();
}
catch
{
throw new Exception(SQL);
}
if (Dr.Read())
{
result = Dr[ColumnI].ToString();
}
else
{
result = "";
}
Dr.Close();
Dispose(Conn);
return result;
}
///
/// 生成一個儲存過程使用的sqlcommand.
///
/// 儲存過程名.
/// 儲存過程入引數組.
///
public SqlCommand CreateCmd(string procName, SqlParameter[] prams)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlCommand Cmd = new SqlCommand(procName, Conn);
Cmd.CommandType = CommandType.StoredProcedure;
if (prams != null)
{
foreach (SqlParameter parameter in prams)
{
if(parameter != null)
{
Cmd.Parameters.Add(parameter);
}
}
}
return Cmd;
}
///
/// 為儲存過程生成一個SqlCommand物件
///
/// 儲存過程名
/// 儲存過程引數
///
private SqlCommand CreateCmd(string procName, SqlParameter[] prams,SqlDataReader Dr)
{
SqlConnection Conn;
Conn = new SqlConnection(ConnStr);
Conn.Open();
SqlCommand Cmd = new SqlCommand(procName, Conn);
Cmd.CommandType = CommandType.StoredProcedure;
if (prams != null)
{
foreach (SqlParameter parameter in prams)
Cmd.Parameters.Add(parameter);
}
Cmd.Parameters.Add(
new SqlParameter("ReturnValue", SqlDbType.Int, 4,
ParameterDirection.ReturnValue, false, 0, 0,
string.Empty, DataRowVersion.Default, null));
return Cmd;
}
///
/// 執行儲存過程,返回.
///
/// 儲存過程名
/// 儲存過程引數
/// SqlDataReader物件
public void RunProc(string procName, SqlParameter[] prams, SqlDataReader Dr)
{
SqlCommand Cmd = CreateCmd(procName, prams, Dr);
Dr = Cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
return;
}
///
/// 執行儲存過程,返回.
///
/// 儲存過程名
/// 儲存過程引數
public string RunProc(string procName, SqlParameter[] prams)
{
SqlDataReader Dr;
SqlCommand Cmd = CreateCmd(procName, prams);
Dr = Cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
if(Dr.Read())
{
return Dr.GetValue(0).ToString();
}
else
{
return "";
}
}
///
/// 執行儲存過程,返回dataset.
///
/// 儲存過程名.
/// 儲存過程入引數組.
///
public DataSet RunProc(string procName,SqlParameter[] prams,DataSet Ds)
{
SqlCommand Cmd = CreateCmd(procName,prams);
SqlDataAdapter Da = new SqlDataAdapter(Cmd);
try
{
Da.Fill(Ds);
}
catch(Exception Ex)
{
throw Ex;
}
return Ds;
}
}
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-329675/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Java類的設計和封裝及類成員的訪問控制Java封裝
- C++ 訪問說明符詳解:封裝資料,控制訪問,提升安全性C++封裝
- JDBC資料庫訪問JDBC資料庫
- SQL Server 資料訪問策略:CLRMESQLServer
- ASP.NET MVC – SQL 資料庫簡介ASP.NETMVCSQL資料庫
- Oracle DBLink跨資料庫訪問SQL server資料同步 踩坑實錄Oracle資料庫SQLServer
- Serverless 解惑——函式計算如何訪問 SQL Server 資料庫Server函式SQL資料庫
- SQL Server 資料訪問策略:即席SQLCUSQLServer
- 資料庫-SQL_DuckDB 訪問 Minio-阿里oss-華為obs等物件儲存資料庫SQL阿里物件
- Android Room封裝成一個類似Redis的快取資料庫的效果AndroidOOM封裝Redis快取資料庫
- [開源] .Net 使用 ORM 訪問 華為GaussDB資料庫ORM資料庫
- c#封裝、訪問修飾符C#封裝
- Android 封裝AsyncTask操作Sqlite資料庫Android封裝SQLite資料庫
- 外網訪問MySQL資料庫MySql資料庫
- Oracle資料庫限制訪問IPOracle資料庫
- SQL資料庫查詢最佳化技巧提升網站訪問速度的方法SQL資料庫網站
- SQL Server建立使用者只能訪問指定資料庫和檢視SQLServer資料庫
- 在Golang中如何正確地使用database/sql包訪問資料庫GolangDatabaseSQL資料庫
- 靜態庫封裝之ComStr類封裝
- 靜態庫封裝之ComFile類封裝
- 靜態庫封裝之ComDir類封裝
- Sql Server資料庫類似正規表示式的字元處理問題SQLServer資料庫字元
- 039.CI4框架CodeIgniter,封裝Model模型繫結資料庫的封裝框架封裝模型資料庫
- 深入理解 Java 修飾符與封裝:訪問許可權、行為控制與資料隱藏Java 修飾符封裝訪問許可權行為控制資料隱藏
- Query.js - 類SQL前端資料查詢類庫JSSQL前端
- Java訪問資料庫的具體步驟:Java資料庫
- 使用 @NoRepositoryBean 簡化資料庫訪問Bean資料庫
- 如何限制ip訪問Oracle資料庫Oracle資料庫
- jmeter 使用 ssh 方式訪問資料庫JMeter資料庫
- Oracle資料訪問元件ODAC的安裝方法Oracle元件
- 【磐維資料庫】透過python訪問磐維資料庫資料庫Python
- Developer 帶有名為 SQL Server Compact 免費的 SQL 資料庫DeveloperSQLServer資料庫
- 第50問:從連線判斷應用訪問資料庫的異常行為資料庫
- SQL Server 資料訪問策略:儲存過程QCSQLServer儲存過程
- Xamarin SQLite教程資料庫訪問與生成SQLite資料庫
- Python學習之旅:訪問MySQL資料庫PythonMySql資料庫
- 資料庫訪問幾種方式對比資料庫
- [開源] .Net ORM 訪問 Firebird 資料庫ORM資料庫
- MySQL資料庫中SQL語句分幾類?MySql資料庫