Sql Server 2008 - 删除同义词

时间:2011-10-19 12:44:39

标签: sql sql-server-2008

我的数据库服务器上有一个实用程序数据库(客户),我在其中存储了用于修改其他数据库上的数据的所有例程。我们最近发现,使用同义词会使我们受益匪浅。

use Customers   
IF EXISTS (SELECT * FROM employees.sys.synonyms WHERE name = 'tblPerson2') begin
drop synonym [dbo].tblPerson2
end

这不起作用,因为我使用的是客户数据库,但需要从我的员工数据库中删除同义词。

SQL Server 2008不支持此语法 -

drop synonym [employees].[dbo].tblPerson2

任何人都对如何修改数据库中的同义词有任何想法。我的解决方案是必须向每个数据库添加一个相同的存储过程,这似乎容易出错。

1 个答案:

答案 0 :(得分:7)

EXEC('USE employees;
DROP SYNONYM [dbo].tblPerson2;')