SCLS/SSWCS_JXDL(2019)/SystemConfig/FrmConnectDB.cs

251 lines
9.9 KiB
C#
Raw Permalink Normal View History

2025-05-19 09:45:29 +08:00
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DBFactory;
namespace SystemConfig
{
public partial class FrmConnectDB : Form
{
DBOperator dbo = new DBOperator(false);
private string _connectType;
/// <summary>
/// Manage<67><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD>ӣ<EFBFBD>Monitor<6F><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
public string ConnectType
{
get { return _connectType; }
set { _connectType = value; }
}
private static FrmConnectDB _formInstance;
public static FrmConnectDB FormInstance
{
get
{
if (_formInstance == null)
{
_formInstance = new FrmConnectDB();
}
return _formInstance;
}
set { _formInstance = value; }
}
public FrmConnectDB()
{
InitializeComponent();
_formInstance = this;
}
private void FrmConnectDB_Load(object sender, EventArgs e)
{
try
{
string dbf = dbo.GetValue("DBFactory");
string[] temp,connstr;
string server="",dbService="",uid="",pwd="";
char[] dh = new char[1] { '=' };
char[] fh = new char[1] { ';' };
if (_connectType == "Manage")
{
lblConnType.Text = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣά<CFA2><CEAC>";
connstr = dbo.GetValue("ManConnString").Split(fh);
}
else //if (_connectType == "Monitor")
{
lblConnType.Text = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣά<CFA2><CEAC>";
connstr = dbo.GetValue("ConnString").Split(fh);
}
for (int i = connstr.GetLowerBound(0); i <= connstr.GetUpperBound(0); i++)
{
temp = connstr[i].Split(dh);
switch (dbf)
{
case "SQLServerDBFactory":
lblserver.Text = "<22><><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
//"Server = (local) ; uid = SA ; pwd =; database = SSWCMS ; MAX Pool Size = 512 "
switch (temp[0].Trim())
{
case "Server":
server = temp[1].Trim();
break;
case "database":
dbService = temp[1].Trim();
break;
case "uid":
uid = temp[1].Trim();
break;
case "pwd":
pwd = temp[1].Trim();
break;
}
break;
case "OracleDBFactory":
lblserver.Text = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD>ֵ<EFBFBD><D6B5>";
//"Data Source=Richard-liu;User ID=pdadmin;Password=pdadmin ; MAX Pool Size = 512 "
switch (temp[0].Trim())
{
case "Data Source":
dbService = temp[1].Trim();
break;
case "User ID":
uid = temp[1].Trim();
break;
case "Password":
pwd = temp[1].Trim();
break;
default:
server = "127.0.0.1";
break;
}
break;
case "OleDBFactory":
//"Provider=OraOLEDB.Oracle.1;Data Source=Richard-liu;User ID=sa;Password= ; MAX Pool Size = 512 "
lblserver.Text = "OLEDB<44><42><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><E1B9A9>";
switch (temp[0].Trim())
{
case "Data Source":
dbService = temp[1].Trim();
break;
case "User ID":
uid = temp[1].Trim();
break;
case "Password":
pwd = temp[1].Trim();
break;
case "Provider":
server = temp[1].Trim();
break;
}
break;
default:
lblserver.Text = "<22><><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
//"Server = (local) ; uid = SA ; pwd =; database = SSWCMS ; MAX Pool Size = 512 "
switch (temp[0].Trim())
{
case "Server":
server = temp[1].Trim();
break;
case "database":
dbService = temp[1].Trim();
break;
case "uid":
uid = temp[1].Trim();
break;
case "pwd":
pwd = temp[1].Trim();
break;
default:
server = "(local)";
uid = "SA";
dbService = "SSWCMS";
break;
}
break;
}
}
tbserver.Text = server;
tbdbService.Text = dbService;
tbuid.Text = uid;
tbpwd.Text = pwd;
}
catch (Exception ex)
{
throw ex;
}
}
private void btOK_Click(object sender, EventArgs e)
{
if (MessageBox.Show("<22><>ȷ<EFBFBD><C8B7>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) != DialogResult.OK)
{
return;
}
if (this.tbserver.Text.Trim().Length == 0)
{
MessageBox.Show("<22><><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD>ֵ<EFBFBD><D6B5>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
if (this.tbdbService.Text.Trim().Length == 0)
{
MessageBox.Show("<22><><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD>ֵ<EFBFBD><D6B5>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
if (this.tbuid.Text.Trim().Length == 0)
{
MessageBox.Show("<22><>¼<EFBFBD><C2BC><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD>ֵ<EFBFBD><D6B5>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
try
{
string dbf = dbo.GetValue("DBFactory");
string key="",connstr="",pwd="";
if (_connectType == "Manage")
{
key="ManConnString";
}
else //if (_connectType == "Monitor")
{
key = "ConnString";
}
if (this.tbpwd.Text.Trim() == "")
{
pwd = null;
}
else
{
pwd = this.tbpwd.Text.Trim();
}
switch (dbf)
{
case "SQLServerDBFactory":
//"Server = (local) ; uid = SA ; pwd =; database = SSWCMS ; MAX Pool Size = 512 "
connstr = "Server = " + tbserver.Text.Trim() + " ; uid = " + tbuid.Text.Trim() + " ; pwd =" + pwd + "; database = " + tbdbService.Text.Trim() + " ; MAX Pool Size = 512 ";
break;
case "OracleDBFactory":
//"Data Source=Richard-liu;User ID=pdadmin;Password=pdadmin ; MAX Pool Size = 512 "
connstr = "Data Source=" + tbdbService.Text.Trim() + " ; User ID= " + tbuid.Text.Trim() + " ; Password=" + pwd + " ; MAX Pool Size = 512 ";
break;
case "OleDBFactory":
//"Provider=OraOLEDB.Oracle.1;Data Source=Richard-liu;User ID=sa;Password= ; MAX Pool Size = 512 "
connstr = "Provider="+ tbserver.Text.Trim() +";Data Source=" + tbdbService.Text.Trim() + " ; User ID= " + tbuid.Text.Trim() + " ; Password=" + pwd + " ; MAX Pool Size = 512 ";
break;
default:
break;
}
dbo.SetValue(key, connstr);
if (MessageBox.Show("<22><><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>ȷ<EFBFBD><C8B7>Ҫ<EFBFBD>˳<EFBFBD><CBB3><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>", MessageBoxButtons.OKCancel, MessageBoxIcon.Information) == DialogResult.OK)
{
Application.Exit();
}
else
{
this.Close();
}
}
catch (Exception ex)
{
throw ex;
}
}
private void btCancel_Click(object sender, EventArgs e)
{
this.Close();
}
}
}