海
我有两个数据库,我想从其中一个数据库中选择一个值.... 因为我想传递一个值,如果该值存储在数据库中,我想选择代表数据库中值的id。
这意味着操作就是......
首先我使用用户控件从一个数据库中选择一行数据... 在该行中有一个值(例如“apple”),我希望将此值(“apple”)传递给第二个数据库...在第二个数据库中,值(“apple”)具有id(例如“澳大利亚”)我希望查询搜索该id(“澳大利亚”)并在文本框中显示。
请帮帮我.... 感谢所有进步......
例如
first database id name details 1 apple sweet 2 orange sweet
第二个数据库
id name details Australian apple sold Indian banana sold
想象一下,有两个数据库.... 使用用户控件我从第一个数据库中选择第一行,我想将该值传递给第二个数据库,并从第二个数据库中找出id australian并在文本框中显示....
谢谢.........答案 0 :(得分:1)
只要为每个数据库使用完全限定的前缀,就可以在两个数据库之间进行连接。
答案 1 :(得分:0)
我认为你应该去加入,你的查询应该看起来像这样
SELECT SecondDataBase.TableName.Id
FROM FirstDatabase.TableName INNER JOIN
SecondDataBase.TableName ON FirstDatabase.TableName.["Column contains Apple"] = SecondDataBase.TableName.["Column contains Apple"]
答案 2 :(得分:0)
只要一个数据库服务器在调用数据库服务器中具有注册引用,完全限定的表名称(包括服务器名称,数据库名称,模式和表(例如,MySqlServerInstance1.mydb1.dbo.table1)名称)肯定会起作用。有关使用MS SQL Server时必须执行的操作,请参阅此内容:http://msdn.microsoft.com/en-us/library/ms188231.aspx
答案 3 :(得分:0)
在MSSQL中,您通常使用SchemaName.TableName
引用表dbo.Fruit
数据库由连接字符串自动确定。 FirstDatabase
因此,当您使用dbo.fruit时,服务器会自动将数据库名称附加到表中,如
FirstDatabase.dbo.Fruit
如果用户帐户具有权限,则可以通过指定数据库
从完全不同的数据库中进行选择SecondDatabase.dbo.FruitSales
更进一步,如果您通过指定链接服务器名称(如
)设置链接服务器,则可以从完全不同的SQL服务器中进行选择SecondServer.ThirdDatabase.dbo.FruitShipping
因此,您可以在数据库中的表和第二个数据库中的表(如
)之间进行连接SELECT *
FROM FirstDatabase.dbo.Fruit AS F INNER JOIN
SecondDatabase.dbo.FruitSales AS FS ON F.Something = FS.Something
但您甚至可以在数据库中的表和不同服务器上的表之间加入,如
SELECT *
FROM FirstDatabase.dbo.Fruit AS F INNER JOIN
SecondServer.ThirdDatabase.dbo.FruitShipping AS FS ON F.Something = FS.Something