SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE VIEW [dbo].[view_item_ledger_entry](item_no, item_description, location, quantity)
AS
SELECT
[ABGSRV11\ABIG].ASKUPROD.dbo.[ASKU PLC$Item Ledger Entry].[Item No_] AS item_no,
[ABGSRV11\ABIG].ASKUPROD.dbo.[ASKU PLC$Item].[Description] AS item_description,
[ABGSRV11\ABIG].ASKUPROD.dbo.[ASKU PLC$Item Ledger Entry].[Location Code] AS location,
SUM([ABGSRV11\ABIG].ASKUPROD.dbo.[ASKU PLC$Item Ledger Entry].Quantity) AS quantity
FROM
[ABGSRV11\ABIG].ASKUPROD.dbo.[ASKU PLC$Item Ledger Entry]
LEFT OUTER JOIN
[ABGSRV11\ABIG].ASKUPROD.dbo.[ASKU PLC$Item] ON [ABGSRV11\ABIG].ASKUPROD.dbo.[ASKU PLC$Item Ledger Entry].[Item No_]=[ABGSRV11\ABIG].ASKUPROD.dbo.[ASKU PLC$Item].[No_]
WHERE
[ABGSRV11\ABIG].ASKUPROD.dbo.[ASKU PLC$Item Ledger Entry].[Item No_] LIKE '5%'
GROUP BY
[ABGSRV11\ABIG].ASKUPROD.dbo.[ASKU PLC$Item Ledger Entry].[Item No_],
[ABGSRV11\ABIG].ASKUPROD.dbo.[ASKU PLC$Item Ledger Entry].[Location Code]
我的问题是:上面的SQL创建了一个视图,但是我遇到很多错误:
消息4104,第16级,状态1,过程view_item_ledger_entry,第20行
多部分标识符“ ABGSRV11 \ ABIG.ASKUPROD.dbo.ASKU PLC $ Item 账本Entry.Item No_”无法绑定。消息4104,第16级,状态1,过程view_item_ledger_entry,第20行
不能绑定多部分标识符“ ABGSRV11 \ ABIG.ASKUPROD.dbo.ASKU PLC $ Item.No_”。信息4104,第16级,状态1,过程view_item_ledger_entry,第21行
多部分标识符“ ABGSRV11 \ ABIG.ASKUPROD.dbo.ASKU PLC $ Item Ledger 无法绑定Entry.Item No_”。消息4104,第16级,状态1,过程view_item_ledger_entry,第22行
不能绑定多部分标识符“ ABGSRV11 \ ABIG.ASKUPROD.dbo.ASKU PLC $ Item Ledger Entry.Item No_”。消息4104,第16级,状态1,过程view_item_ledger_entry,第23行
不能绑定多部分标识符“ ABGSRV11 \ ABIG.ASKUPROD.dbo.ASKU PLC $ Item Ledger Entry.Location Code”。消息4104,第16级,状态1,过程view_item_ledger_entry,第14行
不能绑定多部分标识符“ ABGSRV11 \ ABIG.ASKUPROD.dbo.ASKU PLC $ Item Ledger Entry.Item No_”。消息4104,第16级,状态1,过程view_item_ledger_entry,第15行
不能绑定多部分标识符“ ABGSRV11 \ ABIG.ASKUPROD.dbo.ASKU PLC $ Item.Description”。消息4104,第16级,状态1,过程view_item_ledger_entry,第16行
不能绑定多部分标识符“ ABGSRV11 \ ABIG.ASKUPROD.dbo.ASKU PLC $ Item Ledger Entry.Location Code”。消息4104,第16级,状态1,过程view_item_ledger_entry,第17行
不能绑定多部分标识符“ ABGSRV11 \ ABIG.ASKUPROD.dbo.ASKU PLC $ Item Ledger Entry.Quantity”。
答案 0 :(得分:0)
您得到
表中指定列不可用时的多部分标识符无法绑定
例外。因此,请确保您的表中存在Select
语句中列出的列,并且您还指定了正确的表名。
此外,我建议对连接使用别名,这样可以使编码更容易,并且对于以后可能对其进行调试的其他人来说,您的代码看起来更舒适。
您的上面的代码可以像下面这样重写(仍然确保列名):
CREATE VIEW [dbo].[view_item_ledger_entry]
(
item_no,
item_description,
location,
quantity
)
AS
SELECT
ENT.[Item No_] AS item_no,
ITM.[Description] AS item_description,
ENT.[Location Code] AS location,
SUM(ENT.Quantity) AS quantity
FROM
[ABGSRV11\ABIG].ASKUPROD.dbo.[ASKU PLC$Item Ledger Entry] ENT
LEFT OUTER JOIN
[ABGSRV11\ABIG].ASKUPROD.dbo.[ASKU PLC$Item] ITM ON ENT.[Item No_]= ITM.[No_]
WHERE
ENT.[Item No_] LIKE '5%'
GROUP BY
ENT.[Item No_],
ITM.[Description],
ENT.[Location Code]