?? database.cs.svn-base
字號:
using System;
using System.Data.OracleClient;
using System.Data;
using DataMiddleware;
namespace BackgroudManager
{
/// <summary>
/// Function:數據庫操作
/// Author:wxl
/// Date: 2007-04-06
/// </summary>
public class Database
{
#region 靜態變量
private static IDataAccess m_DB = null;
//data source=TSMCIS;user id=TSMCIS;password=TSMCIS;Connection Lifetime=90;Max Pool Size=5
private static string _DataBaseName = "TSMCIS"; //數據庫名稱
private static string _UserName = "TSMCIS"; //用戶名
private static string _Password = "ICTSDCYUS"; //密碼
private static string _OldPassword = "TSMCIS"; //密碼
private static string _Port = "8086"; //端口號
private static string _ServerIP = "198.216.2.80"; //服務器IP地址
private static string _DataAccessMethod = "Localhost";//訪問方式
#endregion
/// <summary>
/// 獲取數據庫名稱
/// </summary>
{
get
{
return _DataBaseName;
}
}
/// <summary>
/// 獲取用戶名稱
/// </summary>
public static string DBUserName
{
get
{
return _UserName;
}
}
/// <summary>
/// 獲取密碼
/// </summary>
public static string DBPsw
{
get
{
string flag = System.Configuration.ConfigurationSettings.AppSettings["NewPassword"].ToUpper();
if(flag == "TRUE")
{
return _Password;
}
else
{
return _OldPassword;
}
}
}
/// <summary>
/// 獲取本地或者遠程連接方法
/// </summary>
public static string DataAccessMethod
{
get
{
return _DataAccessMethod;
}
}
/// <summary>
/// 獲取端口
/// </summary>
public static string Port
{
get
{
return _Port;
}
}
/// <summary>
/// 獲取服務器IP
/// </summary>
public static string ServerIP
{
get
{
return _ServerIP;
}
}
/// <summary>
/// 獲取最終字符串連接
/// </summary>
/// <returns></returns>
public static string Connection()
{
return GetCnnString(DBUserName,DBUserName,DBPsw);
}
/// <summary>
/// 獲取連接字符串
/// Author:wxl
/// Date:2007-04-13
/// </summary>
/// <param name="databaseName"></param>
/// <param name="userName"></param>
/// <param name="password"></param>
/// <returns></returns>
public static string GetCnnString(string databaseName, string userName, string password)
{
return string.Format("data source=\"{0}\";user id={1};password={2};Connection Lifetime=90;Max Pool Size=5", new object[] {databaseName, userName, password });
}
///<summary>
/// 取得數據庫接口
/// </summary>
/// <returns>返回數據庫接口</returns>
static private IDataAccess GetDB()
{
try
{
//通過數據工廠返回數據庫接口
IDataAccess DB = Database.GetAccess();
return DB;
}
catch (Exception ex)
{
throw (ex);
}
}
/// <summary>
/// 獲得數據訪問接口
/// </summary>
/// <returns>返回數據訪問接口</returns>
static public IDataAccess GetAccess()
{
try
{
//遠程方式
if (DataAccessMethod == "Remote")
{
if (m_DB == null)
{
RemoteDataAccess obj = (RemoteDataAccess)Activator.GetObject(typeof(RemoteDataAccess)
, "tcp://" + ServerIP + ":" + Port + "/RemoteAccess");
m_DB = obj.GetDataAccess();
}
}
//本地方式
if (DataAccessMethod == "Localhost")
{
DatabaseProperty DP = new DatabaseProperty();
//DP.ConnectionString = m_ConnectionString;
DP.ConnectionString = Connection();
DP.DatabaseType = DatabaseType.Oracle;
m_DB = DataAccessFactory.CreatDataAccess(DP);
}
return m_DB;
}
catch (Exception ex)
{
throw (ex);
}
}
/// <summary>
/// ExecuteScalar帶參數的SQL語句
/// </summary>
/// <param name="sql"></param>
/// <param name="parameters"></param>
/// <returns>Object</returns>
public static object ExecuteScalar(string sql, OracleParameter[] parameters)
{
object obj1 = null;
OracleCommand command1 = Database.GetCommand();
command1.CommandText = sql;
foreach (OracleParameter parameter1 in parameters)
{
command1.Parameters.Add(parameter1);
}
try
{
//command1.Connection.Open();
obj1 = command1.ExecuteOracleScalar();
}
catch
{
}
finally
{
command1.Connection.Close();
}
return obj1;
}
/// <summary>
/// 獲取連接Command
/// </summary>
/// <returns></returns>
public static OracleCommand GetCommand()
{
DatabaseProperty DP = new DatabaseProperty();
DP.ConnectionString = Connection();
DP.DatabaseType = DatabaseType.Oracle;
OracleCommand sqlCommond = CreatDataAccess(DP).CreateCommand();
//DB.Close();
return sqlCommond;
}
/// <summary>
/// 連接
/// </summary>
/// <param name="cnnString"></param>
/// <returns></returns>
public static OracleConnection GetCnn(string cnnString)
{
return new OracleConnection(cnnString);
}
/// <summary>
/// 創建Oracle連接
/// </summary>
/// <param name="DP"></param>
/// <returns></returns>
public static OracleConnection CreatDataAccess(DatabaseProperty DP)
{
OracleConnection oracleCmd = GetCnn(DP.ConnectionString);
return oracleCmd;
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -