C# 如何在C语言中连接多服务器和数据库#
这是我的密码C# 如何在C语言中连接多服务器和数据库#,c#,sql,database,string,multi-database,C#,Sql,Database,String,Multi Database,这是我的密码 public class MyDatabaseConnection { string connectionString = "Data Source= my DS3;Initial Catalog = MyCATA;Persist Security Info=True;User ID=sa;Password=mypsw*"; public MyDatabaseConnection(string connectionString) { thi
public class MyDatabaseConnection
{
string connectionString = "Data Source= my DS3;Initial Catalog = MyCATA;Persist Security Info=True;User ID=sa;Password=mypsw*";
public MyDatabaseConnection(string connectionString)
{
this.connectionString = connectionString;
// create a database connection perhaps
}
// some methods for querying a database
public void execute(string query) { }
}
我的目标是当我搜索这个文件名时,它将从不同的服务器搜索整个数据库。示例:如果未找到,它将在服务器1数据库上搜索。如果找到,它将转到下一个服务器2数据库到服务器3数据库。如果找到,它将在datagridview中给出结果。您可以更改表单,如下所示:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
string connectionString ;
public void searchOnAllDatabases(string query)
{
MyDatabaseConnection con1 = new MyDatabaseConnection("Data Source= 10.232.1.15\\SERVER1;Initial Catalog = My Catalog;Persist Security Info=True;User ID=sa;Password=myPSW"); //----1st search here
MyDatabaseConnection con2 = new MyDatabaseConnection("Data Source= 10.232.1.15\\SERVER2;Initial Catalog = My Catalog;Persist Security Info=True;User ID=sa;Password=myPSW"); //---- 2nd search here
MyDatabaseConnection con3 = new MyDatabaseConnection("Data Source= 10.232.1.15\\SERVER3;Initial Catalog = My Catalog;Persist Security Info=True;User ID=sa;Password=myPSW"); //---- 3rd search here
MyDatabaseConnection[] cons = new MyDatabaseConnection[] { con1, con2, con3 };
foreach (MyDatabaseConnection con in cons)
{
MessageBox.Show(Convert.ToString(cons)); //--to see the result only
}
}
您可以在此处更新搜索代码:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public void searchOnAllDatabases(string query)
{
MyDatabaseConnection con1 = new MyDatabaseConnection("Data Source= 10.232.1.15\\SERVER1;Initial Catalog = My Catalog;Persist Security Info=True;User ID=sa;Password=myPSW"); //----1st search here
MyDatabaseConnection con2 = new MyDatabaseConnection("Data Source= 10.232.1.15\\SERVER2;Initial Catalog = My Catalog;Persist Security Info=True;User ID=sa;Password=myPSW"); //---- 2nd search here
MyDatabaseConnection con3 = new MyDatabaseConnection("Data Source= 10.232.1.15\\SERVER3;Initial Catalog = My Catalog;Persist Security Info=True;User ID=sa;Password=myPSW"); //---- 3rd search here
MyDatabaseConnection[] cons = new MyDatabaseConnection[] { con1, con2, con3 };
foreach (MyDatabaseConnection con in cons)
{
var result = con.execute(query);
if (result)
break;
}
}
}
错误是什么?这就是我的意思,先生,我想查询搜索每个服务器和数据库如果在服务器1中没有结果,它将进入服务器2,如果服务器2发现它将不会进入服务器3您将如何确定您已经得到了结果,我的意思是您没有提供搜索代码?public void tloging(){MyDatabaseConnection myCon=new MyDatabaseConnection();SqlConnection sqlCon=new SqlConnection(myCon.MyDTConn);尝试{sqlCon.Open();if((dtblMonitor==null)| |(dtblMonitor.Rows.Count==0)){MessageBox.Show(“搜索其他数据库”);Tlogging();}基本上,它将在dataGridView结果中显示为我的查询。如果datagrid中没有结果,它将在第一个数据库上搜索,并将移动到其他数据库。你能给我一个代码示例吗。你的代码中的dtblMonitor是什么?我找不到它的声明。
public class MyDatabaseConnection
{
string connectionString = "Data Source= my DS3;Initial Catalog = MyCATA;Persist Security Info=True;User ID=sa;Password=mypsw*";
public MyDatabaseConnection(string connectionString)
{
this.connectionString = connectionString;
// create a database connection perhaps
}
// some methods for querying a database
public bool execute(string query)
{
SqlConnection sqlCon = new SqlConnection(connectionString);
try
{
sqlCon.Open();
SqlDataAdapter sqlDaMonitor = new SqlDataAdapter("select * from TLogging where BatchNumber like '%" + query + "%' ", sqlCon);
DataTable dtblMonitor = new DataTable();
sqlDaMonitor.Fill(dtblMonitor);
if ((dtblMonitor == null) || (dtblMonitor.Rows.Count == 0)) {
MessageBox.Show("SEARCH OTHER DATABASE");
myCon.Val += 1;
MessageBox.Show(myCon.MyDTConn);
return false;
}
}
catch(Exception ex)
{
return false;
}
return true;
}
}