我正在尝试创建一个简单的存储过程,但遇到一个奇怪的错误。我是服务器上的系统管理员。
当我运行以下代码时,出现此错误
消息 15151,级别 16,状态 1,行 1
找不到对象“Paul”,因为它不存在或您没有权限。该语句已终止。
我可以在 dbo 模式中创建过程,然后将其传输到模式中。我已经在 2008 年(R1 和 R2)的几个不同安装上尝试过这个,它有时可以工作,但大多数情况下没有。
有没有人有什么建议?谢谢保罗。
if not exists (Select * from sys.schemas Where name = 'Test')
Exec ('Create Schema Test Authorization dbo')
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[Test].[Paul]') AND type in (N'P', N'PC'))
DROP PROCEDURE [Test].[Paul]
GO
Create Procedure Test.Paul
As
Select @@ServerName
GO
Create Procedure dbo.[Paul]
As
Select @@ServerName
GO
Alter Schema Test Transfer dbo.Paul
exec Test.Paul1
IF EXISTS (SELECT * FROM sys.schemas WHERE name = N'Test')
DROP SCHEMA [Test]
GO