SQLServer之刪除函數


刪除函數注意事項

從當前數據庫中刪除一個或多個用戶定義函數。DROP 函數支持本機編譯的標量用戶定義函數。

如果數據庫中存在引用 DROP FUNCTION 的 Transact-SQL 函數或視圖並且這些函數或視圖通過使用 SCHEMABINDING 創建,或者存在引用該函數的計算列、CHECK 約束或 DEFAULT 約束,則 DROP FUNCTION 將失敗。

如果存在引用此函數並且已生成索引的計算列,則 DROP FUNCTION 將失敗。

若要執行 DROP FUNCTION,用戶至少應對函數所屬架構具有 ALTER 權限,或對函數具有 CONTROL 權限。

使用SSMS數據庫管理工具刪除函數

1、連接數據庫-》選擇數據庫-》展開可編程性-》展開函數-》展開要刪除的函數類型-》選擇要刪除的函數-》右鍵點擊-》選擇刪除。

2、在刪除對象彈出框-》點擊確定。

3、查看刪除結果(不需要刷新)。

使用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腳本刪除函數之后需要刷新查看刪除結果,依次顯示刪除命令執行結果和刪除結果。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM