SQLServer之删除函数

时间:2022-01-16 04:34:17

删除函数注意事项

从当前数据库中删除一个或多个用户定义函数。DROP 函数支持本机编译的标量用户定义函数。

如果数据库中存在引用 DROP FUNCTION 的 Transact-SQL 函数或视图并且这些函数或视图通过使用 SCHEMABINDING 创建,或者存在引用该函数的计算列、CHECK 约束或 DEFAULT 约束,则 DROP FUNCTION 将失败。

如果存在引用此函数并且已生成索引的计算列,则 DROP FUNCTION 将失败。

若要执行 DROP FUNCTION,用户至少应对函数所属架构具有 ALTER 权限,或对函数具有 CONTROL 权限。

使用SSMS数据库管理工具删除函数

1、连接数据库-》选择数据库-》展开可编程性-》展开函数-》展开要删除的函数类型-》选择要删除的函数-》右键点击-》选择删除。

SQLServer之删除函数

2、在删除对象弹出框-》点击确定。

SQLServer之删除函数

3、查看删除结果(不需要刷新)。

SQLServer之删除函数

使用T-SQL脚本删除函数

语法:

--声明数据库引用
use 数据库名;
go

--判断是否存在函数,如果存在则删除
if exists(select * from sys.objects where name=[ schema_name. ] function_name)
drop function [ schema_name. ] function_name;
go

语法解析:

--if exists
--只有在函数已存在时才对其进行有条件地删除。 在 SQL Database 中以及从 SQL Server 2016 开始可用。

--schema_name
--用户定义函数所属的架构的名称。

--function_name
--要删除的用户定义函数的名称。 可以选择是否指定架构名称。 不能指定服务器名称和数据库名称。

示例:

--声明数据库引用
use testss;
go

--判断是否存在函数,如果存在则删除
if exists(select * from sys.objects where name='tablefun')
drop function dbo.tablefun;
go

示例结果:使用T-SQL脚本删除函数之后需要刷新查看删除结果,依次显示删除命令执行结果和删除结果。

SQLServer之删除函数

SQLServer之删除函数