想在视图中创建索引.发生下面问题,如何解决?
无法将 视图'dbo.BP_VIEW' 绑定到架构。'dbo.Get_needChar' 尚未绑定到架构。
Get_needChar是CLR函数
------解决方案--------------------
------解决方案--------------------
Get_needChar 函数没有绑定到架构名里。
------解决方案--------------------
ALTER FUNCTION dbo.f_getstr(
@s NVARCHAR(4000), --待分拆的字符串
@flag NVARCHAR(10)='' --数据分隔符
)RETURNS @r TABLE(col NVARCHAR(1000))
WITH SCHEMABINDING
参考
------解决方案--------------------
- SQL code
--创建索引视图create view 视图名 with schemabinding asselect 语句go---创建索引视图需要注意的几点1. 创建索引视图的时候需要指定表所属的架构--错误写法create view v_f with schemabinding asselect a.a,a.b,b.a,b.bfrom a join b on a.id=b.idgo---正确写法:create view v_f with schemabinding asselect a.a,a.b,b.a,b.bfrom dbo.a join dbo.b on a.id=b.idgo2.在创建索引视图的select语句时,不使用*,必须指定具体的列名--错误写法create view v_f with schemabinding asselect *from dbo.a join dbo.b on a.id=b.idgo---正确写法create view v_f with schemabinding asselect a.a,a.b,b.a,b.bfrom dbo.a join dbo.b on a.id=b.idgo3.在创建索引视图的select 语句中,不能存在重复的列名,这个不举例了4. 只能为索引视图创建唯一聚集索引--正确的写法create unique clustered index ix_uniquetb on v_tbgo--错误的写法 create clustered index ix_uniquetb on v_tbgo