这是我现在正在使用的代码
'Declaring Connection String
Dim sqlConnectionString As String
sqlConnectionString = ConfigurationManager.ConnectionStrings("baminterchangerConnectionString").ConnectionString
Dim sqlConnection As New SqlConnection(sqlConnectionString)
'Declaring SQL Queries
Dim insertSQL As String = "insert into [dbo].[imports](OEMPartNumber) values (@OEMPartNumber)"
Dim update As String = "UPDATE a SET a.AMIPartNumber = coalesce(c.Item,e.Item), a.AMIDescription = coalesce(c.Description, e.Description),a.OEMDescription = coalesce(b.OEMDescription,d.OEMDescription)FROM imports as a LEFT JOIN JD as b ON a.OEMPartNumber = b.OEMSubNumber LEFT JOIN amipartnumbers as c ON b.OEMCurrentPartNumber = c.OEMItem LEFT JOIN IH as d ON a.OEMPartNumber = d.OEMSubNumber LEFT JOIN amipartnumbers as e ON d.OEMCurrentPartNumber = e.OEMItem"
'Declaring SQL Commands
Dim sqlInsertCommand As New SqlCommand(insertSQL)
Dim sqlSelectCommand As New SqlCommand("SELECT * FROM [dbo].[imports]", sqlConnection)
Dim sqlUpdateCommand As SqlCommand = New SqlCommand(update, sqlConnection)
这正是我需要做的事情。
然而,现在我正在尝试添加另一个变量。对于在imports.AMIPartNumber中不匹配的项目,我需要在我的其他sqlserver上查询另一个表。
能做到吗?使用另一个sql server上另一个表'JD_ALL'中的数据更新一个sql server上的表'imports'?
我有这个工作在网站上显示数据,但这是用于csv文件导入。在站点上显示数据时,我可以使用多个连接来填充2个不必连接的不同数据表。
答案 0 :(得分:0)
你有两个选择。之一:
1)在配置文件中为其他服务器创建一个新的连接字符串,然后在代码中创建一个新的连接。然后,在使用其他连接和命令之前,您将执行另一个命令以从其他数据库中检索数据。
例如:
'Declaring Connection String
Dim sqlConnectionString As String
sqlConnectionString = ConfigurationManager.ConnectionStrings("baminterchangerConnectionString").ConnectionString
Dim sqlConnection As New SqlConnection(sqlConnectionString)
Dim sqlConnectionStringOtherDatabase As String
sqlConnectionStringOtherDatabase = ConfigurationManager.ConnectionStrings("otherConnectionString").ConnectionString
Dim sqlConnectionOtherDatabase As New SqlConnection(sqlConnectionStringOtherDatabase)
Dim sqlSelectCommandToOtherDB As New SqlCommand("SELECT * FROM [dbo].[OtherTable]", sqlConnectionStringOtherDatabase)
.... etc
2)正如@Dean所提到的,您可以在sql-server实例上添加链接服务器。这确实假设您具有使用SQL Server配置的访问权限。然后,您可以在另一个数据库上查询另一个数据库,就好像它在同一台服务器上一样。这可能会节省一些代码,但需要更多的设置和配置。