创建索引视图时提示架构绑定无效,名称必须由两部分构成

左直拳

 

创建索引视图诸多限制。例如视图引用表要在同一数据库,不能含有子查询,绑定架构,等等。

这些对我都一度造成困惑。现在又遇到了新问题:

CREATE VIEW [dbo].[vW_S]

WITH SCHEMABINDING

AS

SELECT     a.F1,a.F2, a.F3

FROM         dbo.T1 a

INNER JOIN T2 b ON a.Id=b.Id

GO

提示错误:

消息 4512,级别 16,状态 3,过程 vW_S,第 4 行

无法将 视图'dbo.vW_S' 绑定到架构,因为名称 'T2 对于架构绑定无效。名称必须由两部分构成,并且对象不能引用自身。

 

什么意思呢?什么叫名称必须由两部分构成?上网找了找,才知道T2必须写成这样:dbo.T2。注意,如果在前面再加上数据库的名称,如:[db].[dbo].[T2],,纯属画蛇添足,同样出错。