2010年8月23日 星期一

ALTER SCHEMA出現物件已存在的錯誤

ALTER SCHEMA new_schema_name TRANSFER old_schema_name.ObjectName

訊息 15530,層級 16,狀態 1,行 1

名稱為 "ObjectName" 的 物件 已經存在。
我的情況是ObjectName是個預存程序,執行ALTER SCHEMA 後卻告訴我物件已存在,我用SSMS查遍資料表、檢視、預存程序與函數後都找不到同名的物件啊,我想說是見鬼了還是怎樣

上網查到微軟的KB937757有提到這個錯誤,但是情況不太一樣,不過點出我一個方向,就是資料庫裡一定有個物件名稱一模一樣,只不過不是資料表、檢視、預存程序與函數囉

那我想到用sys.objects目錄檢視好像可以查到所有物件的名稱,語法如下
select * from sys.objects where [name] = 'ObjectName'
還真讓我查到了,原來那個同名的物件是TRIGGER啊,真相大白

0 意見:

張貼留言