1

我正在尝试在 Studio 2010/VB.Net 的窗体级别连接到数据库。我在 Sql 2008r2 中使用了两个不同的数据库。我使用一个数据库在表单加载事件(运行时)填充记录,当用户从该表单中选择他们的选择或任何修改时,应通过插入、更新、删除和保存命令将数据更新到其他数据库以供用户将来参考。

是否可以使用一个连接字符串连接两个不同的数据库?

我是否需要在下面提到的代码中添加两个数据库名称?

Imports System.Data.SqlClient

Dim con As New SqlClient.SqlConnection("data source=DATASOURCE;initial catalog=NAME OF DATABASE;Integrated Security=True")
Dim cmd As New SqlCommand()    
cmd.Connection = con    
con.Open()    
con.Close()

或者

我应该在下面的某个地方使用两个数据库吗?

Imports System.Data.SqlClient

Public Class NEW_PERSONAL_INFORMATION

  Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

    Dim con As New SqlClient.SqlConnection("data source=ROOM310-40\SQLEXPRESS;initial catalog=DTIS;Integrated Security=True")

    Dim cmd As New SqlCommand()    
    cmd.Connection = con    
    con.Open()    
    con.Close()
  End Sub

End Class

抱歉,如果我在简单的事情上寻求帮助或无法充分解释它。

我将不胜感激任何帮助。

4

2 回答 2

7

我不知道你在问什么,所以我会给出两个答案。

如果您尝试连接到两个不同的服务器,那么您将需要两个不同的连接字符串。实际上,您将需要两个不同SqlConnection的 s,并且您需要跟踪哪个连接是哪个。

Dim con1 As New SqlClient.SqlConnection("data source=ROOM310-40\SQLEXPRESS;initial catalog=DTIS;Integrated Security=True")
Dim con2 As New SqlClient.SqlConnection("data source=ROOM310-40-2\SQLEXPRESS;initial catalog=DTIS;Integrated Security=True")

如果您正在谈论同一服务器上的多个目录,那么您不需要多个连接。您可以直接在查询中指定目录名称:

SELECT MyColumn FROM MyDatabase1.dbo.MyTable;
SELECT MyColumn FROM MyDatabase2.dbo.MyTable;
于 2012-12-03T16:26:07.187 回答
0

Dim con As New SqlClient.SqlConnection("data source=DATASOURCE;initial catalog=NAME OF DATABASEm,Another Database Name,And SO ;Integrated Security=True")

于 2016-08-09T11:46:16.200 回答