create function fun_lib
(@l_id int)
returns char(10)
with schemabinding
begin
return (select l_name from dbo.library where l_id=@l_id)
end
godrop function fun_lib
为什么绑定之后,这个函数还是可以删除,不是要先删表吗
(@l_id int)
returns char(10)
with schemabinding
begin
return (select l_name from dbo.library where l_id=@l_id)
end
godrop function fun_lib
为什么绑定之后,这个函数还是可以删除,不是要先删表吗
解决方案 »
- 在一次查询中调用了两次自定义的函数,两次调用的参数完全相同,这两次函数调用都要重复执行一次吗?
- 如何不损坏表中的数据而进行字段类型转换
- 这个sql为什么错误亚
- 急求一查询语句??很简单,可我不懂
- 如何取得ROWCOUNT值
- 是ASP错误,还是数据库连接错误?错误 '80040e21'
- 请专家帮忙 SQL的错误 错误: 823,严重度: 24,状态: 2 请专家帮忙
- 要申请怎样的空间才可以放数据库?要多少钱?
- 如何得到ms sql server 2000中属于某个用户的数据表列表(系统表除外)?
- SQL 2008求助!!!sql server(SQLEXPRESS)启动失败
- T-sql非常之难题(满分100)
- 求一句简单的SQL语句?
是不能drop 引用的table,除非先drop function
SCHEMABINDING指定将函数绑定到它所引用的数据库对象。如果函数是用 SCHEMABINDING 选项创建的,则不能更改(使用 ALTER 语句)或除去(使用 DROP 语句)该函数引用的数据库对象。函数与其所引用对象的绑定关系只有在发生以下两种情况之一时才被解除: 除去了函数。
在未指定 SCHEMABINDING 选项的情况下更改了函数(使用 ALTER 语句)。
只有在满足以下条件时,函数才能绑定到架构: 该函数所引用的用户定义函数和视图也已绑定到架构。
该函数所引用的对象不是用两部分名称引用的。
该函数及其引用的对象属于同一数据库。
执行 CREATE FUNCTION 语句的用户对所有该函数所引用的数据库对象都具有 REFERENCES 权限。
如果不符合以上条件,则指定了 SCHEMABINDING 选项的 CREATE FUNCTION 语句将失败。