Gur*_*epS 10 sql t-sql sql-server
我需要在两个不同的数据库中查询两个表SQL Server.在一个表上,我需要获取所有行(简单选择),另一个是select,但是id匹配我的存储过程中的参数.
我尝试这样做但得到错误
无法绑定多部分标识符.
我怎么能这样做?
查询:
SELECT QUALITY_CENTER, POSTCODE_ID, (SELECT [QCID]
FROM [Website_Interactive].[dbo].[IIPCentre_UserObject]
WHere LoginID = @loginID)
FROM IIP_QC_LIST
Run Code Online (Sandbox Code Playgroud)
Abe*_*ler 15
听起来你错了什么.您可以使用以下方法查询另一个数据库中的表:
SELECT tn.ID, tn.NAME
FROM [Database Name].[Schema].[TableName] as tn
Run Code Online (Sandbox Code Playgroud)
我故意添加了一个两个字的数据库名称,因为你必须在它周围加上方括号才能被识别.您的架构很可能是dbo.
如果您向我们展示您的查询并向我们提供数据库名称,我可以提供更完整的答案.
更新:
你确定你正确拼写"中心"吗?我注意到你把它拼写为"中心" IIPCentre_UserObject,我认为它可能适合英国(?),但你拼写它为"中心" QUALITY_CENTER.我认为它在你的环境中以某种方式拼写.
您可以通过向SQL对象(在本例中为SQL表)提供FQN(完全限定名称)来轻松完成此操作.表的FQN语法如下:
[database-name].[schema-name].[table-name]
Run Code Online (Sandbox Code Playgroud)
例:
SELECT a, b, c FROM Database1.Schema1.Table1
UNION
SELECT a, b, c FROM Database2.Schema2.Table2
Run Code Online (Sandbox Code Playgroud)
Database1是您的第一个数据库,Database2是您的第二个数据库.
| 归档时间: |
|
| 查看次数: |
52473 次 |
| 最近记录: |