Creation de vue avec Schemabinding et fonction
Le
Je cherche une solution a la création d'une vue avec
utilisation de fonction et l'option schemabinding.
Sans schemabinding cela fonctionne mais il me faut le
schemabinding pour la cohérence du dictionnaire des
données ( comme par exemple sysdepend )
Any idea ?
CREATE FUNCTION [dbo].[test] ( @value as int)
RETURNS tinyint AS
BEGIN
return (@value)
end
create view [dbo].[testview] as
select result = dbo.test(1)
create view [dbo].[testview] with schemabinding as
select result = dbo.test(1)
--Result
--Server: Msg 4513, Level 16, State 1, Procedure testview,
Line 2
--Cannot schema bind view 'dbo.testview'. 'dbo.test' is
not schema bound.
drop view testview
create view [dbo].[testview] as
select result = dbo.test(1)
-- result : The command(s) completed successfully.
utilisation de fonction et l'option schemabinding.
Sans schemabinding cela fonctionne mais il me faut le
schemabinding pour la cohérence du dictionnaire des
données ( comme par exemple sysdepend )
Any idea ?
CREATE FUNCTION [dbo].[test] ( @value as int)
RETURNS tinyint AS
BEGIN
return (@value)
end
create view [dbo].[testview] as
select result = dbo.test(1)
create view [dbo].[testview] with schemabinding as
select result = dbo.test(1)
--Result
--Server: Msg 4513, Level 16, State 1, Procedure testview,
Line 2
--Cannot schema bind view 'dbo.testview'. 'dbo.test' is
not schema bound.
drop view testview
create view [dbo].[testview] as
select result = dbo.test(1)
-- result : The command(s) completed successfully.

Poser une question


SchemaBinding sur la fonction.
En effet, il me parait logique que la création d'un objet qui doit s'appuyer
sur le dictionnaire des données ne soit possible que si tous les objets
qu'il utilise s'appuient eux aussi sur le dictionnaire des données. C'est ce
que le message d'erreur me semble indiquer.
Donc :
- créer la function avec schemabinding
- créer la vue avec schemabinding
et cela devrait coller à mon avis.
Patrice
--
news:4c9501c490e8$bf1bf770$
Je cherche une solution a la création d'une vue avec
utilisation de fonction et l'option schemabinding.
Sans schemabinding cela fonctionne ... mais il me faut le
schemabinding pour la cohérence du dictionnaire des
données ( comme par exemple sysdepend )
Any idea ?
CREATE FUNCTION [dbo].[test] ( @value as int)
RETURNS tinyint AS
BEGIN
return (@value)
end
create view [dbo].[testview] as
select result = dbo.test(1)
create view [dbo].[testview] with schemabinding as
select result = dbo.test(1)
--Result
--Server: Msg 4513, Level 16, State 1, Procedure testview,
Line 2
--Cannot schema bind view 'dbo.testview'. 'dbo.test' is
not schema bound.
drop view testview
create view [dbo].[testview] as
select result = dbo.test(1)
-- result : The command(s) completed successfully.