C# 在SQL Server中连接两个数据库
如何连接两个数据库并显示某一列与另一数据库中的另一列的组合C# 在SQL Server中连接两个数据库,c#,sql-server,C#,Sql Server,如何连接两个数据库并显示某一列与另一数据库中的另一列的组合 与文本框3中一样,我想显示此数据库的B值加上数据库2中的C值,表2如果两个数据库都存在于一台服务器中,则可以使用数据库名称作为表名称的前缀: private void button1_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection(); con.ConnectionString = "Data Source
与文本框3中一样,我想显示此数据库的B值加上数据库2中的C值,表2如果两个数据库都存在于一台服务器中,则可以使用数据库名称作为表名称的前缀:
private void button1_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection();
con.ConnectionString = "Data Source= shwn-PC\\SQLEXPRESS;Initial Catalog=database1;Integrated Security=True";
con.Open();
SqlCommand cmd = new SqlCommand("select * from table1 where A ='" + textBox1.Text.Trim() + "'", con);
SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
textBox2.Text = dr["A"].ToString();
textBox3.Text = dr["B"].ToString();
}
}
else
MessageBox.Show("No record >> " + textBox1.Text.ToString());
}
}
试着用上面的方法。这只是一个示例,我用它连接了来自两个不同数据库的两个表 打开两个连接、两个数据读取器并读取值两次。旁白:请参阅。如果我放置
"'; 在textBox1
中放下表1,整个表都会放下。你需要仔细阅读SQL注入。我想说,这并没有增加其他现有答案没有涵盖的任何内容,但我删除了我的否决票,因为它使用了一种稍微不同的技术。嗨,cybermonkey,当我开始编写此解决方案时,当时的评论不在这里。当我发布它时,它会在我面前弹出。这不是我的错!!你花了五分钟才写出那个答案?那不应该是多部分名称下解释的db1..TableA
?是的,我想应该是,但据我记忆所及,它只使用了一个点。
SELECT a.col1, b.col2 FROM db1.TableA a
INNER JOIN db2.TableB b ON b.Id = a.LinkId
SELECT * FROM [DB1].[dbo].[Table1],[DB2].[dbo].[Table2]