?? cdo.cs
字號:
/*
* CDO.cs
*
* 作者:邱觀琛
* 創建時間:2002-5-28
* 最后修改:2002-6-21
*
*
* 提供一些與數據庫進行直接聯系的函數,例如數據庫的連接和斷開,
* 執行sql命令和查詢等。
*
*/
using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
namespace CFC
{
/// <summary>
/// 提供一些與數據庫進行直接聯系的函數。
/// 除Connect外,調用其他成員函數時必須先調用函數Connect連接數據庫。
/// </summary>
public class CDO
{
private CDO()
{
}
#region private static string ConnectionString : 數據庫的連接字符串
/// <summary>
/// 數據庫的連接字符串。
/// </summary>
private static string ConnectionString = ConfigurationSettings.AppSettings["DSN"];
#endregion
#region private static SqlConnection CurrConnection : 當前系統對數據庫的連接
/// <summary>
/// 當前系統對數據庫的連接。對數據庫的任何操作將使用這個連接。
/// 全局變量。
/// </summary>
private static SqlConnection CurrConnection = new SqlConnection();
#endregion
#region public static void SetConnectionString(string Server,string UID, string Pwd, string Database) : 設置數據庫的連接字符串
/// <summary>
/// 設置數據庫的連接字符串。
/// </summary>
/// <param name="Server">數據庫服務器的ip地址,可以設成localhost</param>
/// <param name="UID">用戶名</param>
/// <param name="Pwd">密碼</param>
/// <param name="Database">數據庫名稱</param>
public static void SetConnectionString(string Server,string UID, string Pwd, string Database)
{
ConnectionString = String.Format("server={0};uid={1};pwd={2};database={3}",Server,UID,Pwd,Database);
}
#endregion
#region public static void Connect() : 連接數據庫
/// <summary>
/// 連接數據庫。
/// </summary>
public static void Connect()
{
try
{
CurrConnection.ConnectionString = ConnectionString;
CurrConnection.Open();
}
catch (Exception e)
{
CError.ErrorMsg = e.Message;
}
}
#endregion
#region public static void Disconnect() : 斷開對數據庫的連接
/// <summary>
/// 斷開對數據庫的連接。
/// </summary>
public static void Disconnect()
{
try
{
CurrConnection.Close();
}
catch (Exception e)
{
CError.ErrorMsg = e.Message;
}
}
#endregion
#region public static void Execute(string Sql) : 執行指定sql命令
/// <summary>
/// 執行指定sql命令。
/// </summary>
/// <param name="Sql">被執行的sql命令。</param>
public static void Execute(string Sql)
{
// try
{
SqlCommand CurrCommand = new SqlCommand(Sql,CurrConnection);
CurrCommand.ExecuteNonQuery();
}
// catch (Exception e)
{
// CError.ErrorMsg = e.Message;
}
}
#endregion
#region public static SqlDataReader GetDataReader(string Sql) : 執行指定sql查詢,將查詢結果返回到一個SqlDataReader
/// <summary>
/// 執行指定sql查詢,將查詢結果返回到一個SqlDataReader。
/// </summary>
/// <param name="Sql">被執行的sql查詢。</param>
/// <returns>存在SqlDataReader里的查詢結果</returns>
public static SqlDataReader GetDataReader(string Sql)
{
try
{
SqlCommand CurrCommand = new SqlCommand(Sql,CurrConnection);
return CurrCommand.ExecuteReader();
}
catch (Exception e)
{
CError.ErrorMsg = e.Message;
return null;
}
}
#endregion
#region public static SqlDataReader GetDataReaderSingleRow(string Sql) : 執行指定sql查詢,將單行查詢結果返回到一個SqlDataReader
/// <summary>
/// 執行指定sql查詢,將查詢結果返回到一個SqlDataReader。
/// 但查詢結果只取一行。
/// </summary>
/// <param name="Sql">被執行的sql查詢。</param>
/// <returns>存在SqlDataReader里的單行查詢結果</returns>
public static SqlDataReader GetDataReaderSingleRow(string Sql)
{
try
{
SqlCommand CurrCommand = new SqlCommand(Sql,CurrConnection);
return CurrCommand.ExecuteReader(CommandBehavior.SingleRow);
}
catch (Exception e)
{
CError.ErrorMsg = e.Message;
return null;
}
}
#endregion
#region public static DataTable GetDataTable(string Sql) : 執行指定sql查詢并生成一個DataTable存儲查詢結果
/// <summary>
/// 執行指定sql查詢并生成一個DataTable存儲查詢結果。
/// </summary>
/// <param name="Sql">被執行的sql查詢。</param>
/// <returns>存在DataTable里的查詢結果</returns>
public static DataTable GetDataTable(string Sql)
{
try
{
DataTable dt = new DataTable();
SqlDataAdapter CurrDataAdapter = new SqlDataAdapter(Sql,CurrConnection);
CurrDataAdapter.Fill(dt);
return dt;
}
catch (Exception e)
{
CError.ErrorMsg = e.Message;
return null;
}
}
#endregion
#region public static void AppendDataTable(string Sql, DataTable dt) : 執行指定sql查詢并填入指定DataTable。指定DataTable中原數據保留
/// <summary>
/// 執行指定sql查詢并填入指定DataTable。指定DataTable中原數據保留。
/// </summary>
/// <param name="Sql">被執行的sql查詢。</param>
/// <param name="dt">存儲查詢結果的DataTable</param>
public static void AppendDataTable(string Sql, DataTable dt)
{
try
{
SqlDataAdapter CurrDataAdapter = new SqlDataAdapter(Sql,CurrConnection);
CurrDataAdapter.Fill(dt);
}
catch (Exception e)
{
CError.ErrorMsg = e.Message;
}
}
#endregion
#region public static void FillDataTable(string Sql, DataTable dt) : 執行指定sql查詢并填入指定DataTable。指定DataTable中原數據被清空
/// <summary>
/// 執行指定sql查詢并填入指定DataTable。指定DataTable中原數據被清空。
/// </summary>
/// <param name="Sql">被執行的sql查詢。</param>
/// <param name="dt">存儲查詢結果的DataTable</param>
public static void FillDataTable(string Sql, DataTable dt)
{
try
{
dt.Clear();
AppendDataTable(Sql,dt);
}
catch (Exception e)
{
CError.ErrorMsg = e.Message;
}
}
#endregion
#region public static void UpdateDataTable(string Sql, DataTable dt) : 將指定DataTable中存儲的內容更新回數據庫
/// <summary>
/// 將指定DataTable中存儲的內容更新回數據庫。被替換掉的數據由執行指定sql查詢而得。
/// </summary>
/// <param name="Sql">被執行以得到被替換數據的的sql查詢。</param>
/// <param name="dt">存儲新數據的DataTable</param>
public static void UpdateDataTable(string Sql, DataTable dt)
{
try
{
SqlDataAdapter CurrDataAdapter = new SqlDataAdapter(Sql,CurrConnection);
SqlCommandBuilder CurrCommandBuilder = new SqlCommandBuilder(CurrDataAdapter);
CurrDataAdapter.Update(dt);
}
catch (Exception e)
{
CError.ErrorMsg = e.Message;
}
}
#endregion
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -