2016-09-27 86 views
0

我创建了一个函数Test1()。我想将函数重命名为Test11()。如何在sql中使用查询重命名该函数?

Create function dbo.Test1() 
    returns Datetime 
    AS 
     BEGIN 
    return (SELECT GETDATE()) 
    END 
    GO 
    SELECT dbo.Test1() 

如果可能使用查询重命名函数名称。

回答

1

如果您正在使用T-SQL这样做,你就必须DROP功能,之后重新创建:

DROP FUNCTION dbo.Test1; 
CREATE FUNCTION dbo.Test11() 
RETURNS DATETIME 
AS 
BEGIN 
    RETURN (SELECT GETDATE()) 
END 

MSDN

要重命名的用户定义函数

使用Transact-SQL语句无法执行此任务。要使用Transact-SQL重命名用户定义的函数,必须先删除现有函数,然后用新名称重新创建它。确保所有使用该函数旧名称的代码和应用程​​序现在都使用新名称。

+0

没有丢失。如果可能重命名.. @ diiN_ – Meline

+0

@Meline MSDN说,你不能重命名它,而不必先删除它。 –

3

重命名用户定义的函数 使用Transact-SQL语句无法执行此任务。要使用Transact-SQL重命名用户定义的函数,必须先删除现有函数,然后用新名称重新创建它。确保所有使用该函数旧名称的代码和应用程​​序现在都使用新名称。

https://msdn.microsoft.com/en-us/library/hh510244.aspx

0

没有办法,除非你放弃重命名过程/函数,并重新创建它。

0

使用Transact-SQL语句无法执行此任务。要使用Transact-SQL重命名用户定义的函数,必须先删除现有函数,然后用新名称重新创建它。确保使用该功能的旧名称的所有代码和应用程​​序现在使用新名称

1
exec sp_rename 'dbo.Test1','Test11',object 
--1st parameter=Original object name 
--2nd parmeter=New name 
--3rd parmeter=Objecttype to rename(object,column,index)