You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
257 lines
10 KiB
257 lines
10 KiB
10 months ago
|
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 ControlSystem
|
||
|
{
|
||
|
/// <summary>
|
||
|
/// Creator:Richard.liu
|
||
|
/// �ӿںͼ������ݿ���������ά��
|
||
|
/// </summary>
|
||
|
public partial class FrmConnectDB : Form
|
||
|
{
|
||
|
DBOperator dbo = new DBOperator(false);
|
||
|
private string _connectType;
|
||
|
/// <summary>
|
||
|
/// Manage�����������ݿ����ӣ�Monitor�����������ݿ�����
|
||
|
/// </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")
|
||
|
{
|
||
|
dbf = dbo.GetValue("ManDBFactory");
|
||
|
lblConnType.Text = "�ӿھݿ�����������Ϣά��";
|
||
|
connstr = dbo.GetValue("ManConnString").Split(fh);
|
||
|
|
||
|
}
|
||
|
else //if (_connectType == "Monitor")
|
||
|
{
|
||
|
dbf = dbo.GetValue("DBFactory");
|
||
|
lblConnType.Text = "�������ݿ�����������Ϣά��";
|
||
|
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 = "���ݿ���������������";
|
||
|
//"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 = "���������ƣ��������κ�ֵ��";
|
||
|
//"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���ݿ��ṩ��";
|
||
|
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 = "���ݿ���������������";
|
||
|
//"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("��ȷ��Ҫ�������ݿ����������ļ���Ϣ����", "������ʾ��", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) != DialogResult.OK)
|
||
|
{
|
||
|
return;
|
||
|
}
|
||
|
if (this.tbserver.Text.Trim().Length == 0)
|
||
|
{
|
||
|
MessageBox.Show("���ݿ����������������������ǿ�ֵ��", "��������ʾ��", MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
||
|
return;
|
||
|
}
|
||
|
if (this.tbdbService.Text.Trim().Length == 0)
|
||
|
{
|
||
|
MessageBox.Show("���ݿ��������Ʋ������ǿ�ֵ��", "��������ʾ��", MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
||
|
return;
|
||
|
}
|
||
|
if (this.tbuid.Text.Trim().Length == 0)
|
||
|
{
|
||
|
MessageBox.Show("��¼���ݿ����û����������ǿ�ֵ��", "��������ʾ��", 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("���ݿ����������ļ���Ϣ�����ɹ���ȷ��Ҫ�˳���ϵͳ������������������", "������ʾ��", 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();
|
||
|
}
|
||
|
}
|
||
|
}
|