📄 database.cs
字号:
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>
public static string DBName
{
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 + -