📄 makeconnection.cs
字号:
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Data.OleDb;
using System.Data.Odbc;
namespace DAL
{
public class MakeConnection
{
//*************************************************************
//* 函数名称:MakeConnectionString
//* 功能描述:根据不同的数据库类型,使用不同的连接数据库drive
//* 作 者:徐宏杰
//* 创建日期:2004.3.16
//* 传入参数:
//* 返回参数:
//* 备 注:
//*************************************************************
public string MakeConnectionString(DAL.clsDBConnkey ConnkeyWord)
{
string strConn = "";
strConn = "server=" + ConnkeyWord.ServerName + "; database=" + ConnkeyWord.DatabaseURL + "; uid=" + ConnkeyWord.UserName + "; pwd=" + ConnkeyWord.PassWord;
return strConn;
}
//*************************************************************
//* 函数名称:MakeConnectionString
//* 功能描述:根据不同的数据库类型,使用不同的连接数据库drive
//* 作 者:徐宏杰
//* 创建日期:2004.3.16
//* 传入参数:
//* 返回参数:
//* 备 注:
//*************************************************************
public string MakeConnectionString(DAL.clsDBConnkey ConnkeyWord, EnumDBType DataType, string WebVirtualPath)
{
string strConn = "";
switch (DataType)
{
case EnumDBType.Sql:
strConn = "server=" + ConnkeyWord.ServerName + "; database=" + ConnkeyWord.DatabaseURL + "; uid=" + ConnkeyWord.UserName + "; pwd=" + ConnkeyWord.PassWord;
break;
case EnumDBType.Oracle:
if (ConnkeyWord.ServerName.ToUpper().Equals(System.Net.Dns.GetHostName().ToUpper()))
{
strConn = "user id=" + ConnkeyWord.UserName + ";data source=" + ConnkeyWord.DatabaseURL + ";password=" + ConnkeyWord.PassWord;
}
else
{
strConn = "user id=" + ConnkeyWord.UserName + ";data source=" + ConnkeyWord.DatabaseURL + "_" + ConnkeyWord.ServerName + ";password=" + ConnkeyWord.PassWord;
}
break;
case EnumDBType.Odbc:
strConn = "DSN=" + WebVirtualPath + ConnkeyWord.DatabaseURL + ";UID=" + ConnkeyWord.UserName + ";PWD=" + ConnkeyWord.PassWord; break;
case EnumDBType.Oledb:
strConn = "Provider=Microsoft.Jet.oledb.4.0;data Source=" + WebVirtualPath + ConnkeyWord.DatabaseURL + ";Jet oledb:database password=" + ConnkeyWord.PassWord; break;
default:
strConn = "";
break;
}
return strConn ;
}
//*************************************************************
//* 函数名称: Method(sql语句)
//* 功能描述:根据不同的execMethod参数,使用不同的方法连接数据库。(主入口)
//* 作 者:徐宏杰
//* 创建日期:2004.3.16
//* 传入参数:
//* 返回参数:
//* 备 注:
//*************************************************************
public object MakeConnectionMethod(string sql, DAL.clsDBConnkey ConnkeyWord, executeMethod execMethod, EnumDBType DataType, String WebVirtualPath)
{
String strConnection = "";
DataSet mydataset1 = null;
strConnection = MakeConnectionString(ConnkeyWord, DataType, WebVirtualPath);
//返回dataSet
if (strConnection != "" && execMethod == executeMethod.execute_DataSet)
{
switch (DataType)
{
case EnumDBType.Oledb:
OleDbConnection conn = null;
try
{
OleDbDataAdapter apater;
mydataset1 = new DataSet();
conn = new OleDbConnection(strConnection);
conn.Open();
apater = new OleDbDataAdapter(sql, conn);
apater.Fill(mydataset1, "form");
conn.Close();
if (conn != null) conn.Dispose();
}
catch (System.Exception ex)
{
if (conn != null) conn.Dispose();
throw ex;
}
break;
case EnumDBType.Sql:
SqlConnection sqlconn = null;
try
{
SqlDataAdapter apater;
mydataset1 = new DataSet();
sqlconn = new SqlConnection(strConnection);
sqlconn.Open();
apater = new SqlDataAdapter(sql, sqlconn);
apater.Fill(mydataset1, "form");
sqlconn.Close();
if (sqlconn != null) sqlconn.Dispose();
}
catch (System.Exception ex)
{
if (sqlconn != null) sqlconn.Dispose();
throw ex;
}
break;
}
return mydataset1;
}
//添加、删除、修改
if (strConnection != "" && execMethod == executeMethod.execute_NoneQuery)
{
bool isSucceed = true;
switch (DataType)
{
case EnumDBType.Oledb:
OleDbConnection conn = null;
try
{
mydataset1 = new DataSet();
conn = new OleDbConnection(strConnection);
conn.Open();
OleDbCommand command = new OleDbCommand(sql, conn);
command.ExecuteNonQuery();
conn.Close();
if (conn != null) conn.Dispose();
}
catch (System.Exception ex)
{
if (conn != null) conn.Dispose();
isSucceed = false;
throw ex;
}
break;
case EnumDBType.Sql:
SqlConnection sqlconn = null;
try
{
mydataset1 = new DataSet();
sqlconn = new SqlConnection(strConnection);
sqlconn.Open();
SqlCommand command = new SqlCommand(sql, sqlconn);
command.ExecuteNonQuery();
sqlconn.Close();
if (sqlconn != null) sqlconn.Dispose();
}
catch (System.Exception ex)
{
if (sqlconn != null) sqlconn.Dispose();
isSucceed = false;
throw ex;
}
break;
}
return isSucceed;
}
//返回关键字第一行记录的arraylist。
if (strConnection != "" && execMethod == executeMethod.execute_Linekey)
{
System.Collections.ArrayList arraylistItem = null;
switch (DataType)
{
case EnumDBType.Oledb:
OleDbConnection conn = null;
try
{
arraylistItem = new System.Collections.ArrayList();
OleDbDataAdapter apater;
mydataset1 = new DataSet();
conn = new OleDbConnection(strConnection);
conn.Open();
apater = new OleDbDataAdapter(sql, conn);
apater.Fill(mydataset1, "form");
conn.Close();
for (int i = 0; i < mydataset1.Tables["form"].Columns.Count; i++)
{
arraylistItem.Add(mydataset1.Tables["form"].Rows[0][i]);
}
if (conn != null) conn.Dispose();
}
catch (System.Exception ex)
{
if (conn != null) conn.Dispose();
throw ex;
}
break;
case EnumDBType.Sql:
SqlConnection sqlconn = null;
try
{
arraylistItem = new System.Collections.ArrayList();
SqlDataAdapter apater;
mydataset1 = new DataSet();
sqlconn = new SqlConnection(strConnection);
sqlconn.Open();
apater = new SqlDataAdapter(sql, sqlconn);
apater.Fill(mydataset1, "form");
for (int i = 0; i < mydataset1.Tables["form"].Columns.Count; i++)
{
arraylistItem.Add(mydataset1.Tables["form"].Rows[0][i]);
}
sqlconn.Close();
if (sqlconn != null) sqlconn.Dispose();
}
catch (System.Exception ex)
{
if (sqlconn != null) sqlconn.Dispose();
throw ex;
}
break;
}
return arraylistItem;
}
//首条记录
if (strConnection != "" && execMethod == executeMethod.execute_Scalar)
{
string retString = "";
switch (DataType)
{
case EnumDBType.Oledb:
OleDbConnection conn = null;
try
{
retString = "";
mydataset1 = new DataSet();
conn = new OleDbConnection(strConnection);
conn.Open();
OleDbCommand command = new OleDbCommand(sql, conn);
retString = Convert.ToString(command.ExecuteScalar());
conn.Close();
if (conn != null) conn.Dispose();
}
catch (System.Exception ex)
{
if (conn != null) conn.Dispose();
throw ex;
}
break;
case EnumDBType.Sql:
SqlConnection sqlconn = null;
try
{
retString = "";
mydataset1 = new DataSet();
sqlconn = new SqlConnection(strConnection);
sqlconn.Open();
SqlCommand command = new SqlCommand(sql, sqlconn);
retString = Convert.ToString(command.ExecuteScalar());
sqlconn.Close();
if (sqlconn != null) sqlconn.Dispose();
}
catch (System.Exception ex)
{
if (sqlconn != null) sqlconn.Dispose();
throw ex;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -