?? database.cs
字號:
/**********************************************************
* 說明:MyChatRoom的數(shù)據(jù)操作層
* 作者:
* 創(chuàng)建日期:
*********************************************************/
using System;
using System.ComponentModel;
using System.Collections;
using System.Diagnostics;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
namespace MyChatRoom.DataAccessLayer
{
/// <summary>
/// 數(shù)據(jù)訪問類
/// </summary>
public class Database : IDisposable
{
/// <summary>
/// 保護(hù)變量,數(shù)據(jù)庫連接。
/// </summary>
protected SqlConnection Connection;
/// <summary>
/// 保護(hù)變量,數(shù)據(jù)庫連接串。
/// </summary>
protected String ConnectionString;
/// <summary>
/// 構(gòu)造函數(shù)。
/// </summary>
/// <param name="DatabaseConnectionString">數(shù)據(jù)庫連接串</param>
public Database()
{
ConnectionString = ConfigurationSettings.AppSettings["DBConnectionString"];
}
/// <summary>
/// 析構(gòu)函數(shù),釋放非托管資源
/// </summary>
~Database()
{
try
{
if (Connection != null)
Connection.Close();
}
catch { }
try
{
Dispose();
}
catch { }
}
/// <summary>
/// 保護(hù)方法,打開數(shù)據(jù)庫連接。
/// </summary>
protected void Open()
{
if (Connection == null)
{
Connection = new SqlConnection(ConnectionString);
}
if (Connection.State.Equals(ConnectionState.Closed))
{
Connection.Open();
}
}
/// <summary>
/// 公有方法,關(guān)閉數(shù)據(jù)庫連接。
/// </summary>
public void Close()
{
if (Connection != null)
Connection.Close();
}
/// <summary>
/// 公有方法,釋放資源。
/// </summary>
public void Dispose()
{
// 確保連接被關(guān)閉
if (Connection != null)
{
Connection.Dispose();
Connection = null;
}
}
/// <summary>
/// 公有方法,獲取數(shù)據(jù),返回一個DataSet。
/// </summary>
/// <param name="SqlString">Sql語句</param>
/// <returns>DataSet</returns>
public DataSet GetDataSet(String SqlString)
{
Open();
SqlDataAdapter adapter = new SqlDataAdapter(SqlString, Connection);
DataSet dataset = new DataSet();
adapter.Fill(dataset);
Close();
return dataset;
}
/// <summary>
/// 公有方法,獲取數(shù)據(jù),返回一個DataRow。
/// </summary>
/// <param name="SqlString">Sql語句</param>
/// <returns>DataRow</returns>
public DataRow GetDataRow(String SqlString)
{
DataSet dataset = GetDataSet(SqlString);
dataset.CaseSensitive = false;
if (dataset.Tables[0].Rows.Count > 0)
{
return dataset.Tables[0].Rows[0];
}
else
{
return null;
}
}
/// <summary>
/// 公有方法,執(zhí)行Sql語句。
/// </summary>
/// <param name="SqlString">Sql語句</param>
/// <returns>對Update、Insert、Delete為影響到的行數(shù),其他情況為-1</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;
}
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -