2010-09-12 14 views
5

En SQL Server 2008, ¿cómo puedo colocar mis procedimientos almacenados en la carpeta "Procedimientos almacenados" de mi DB?¿Cómo colocar el procedimiento almacenado en la ubicación deseada?

Cuando declaro esta manera:

CREATE PROCEDURE mySchema.myProc 

Se va a:

MYSERVER\System Databases\Master\Programmability\Stored procedures folder. 

Cómo saber servidor, para almacenarlo en:

MYSERVER\System Databases\MYDB\Programmability\Stored procedures folder. 

EDIT:

Si lo declaro así:

CREATE PROCEDURE [myDB].mySchema.myProc 

se queja:

'CREATE/ALTER PROCEDURE' does not allow specifying the database name as a prefix to the object name. 

Si utilizo la palabra clave 'uso', se queja:

a USE database statement is not allowed in a procedure, function or trigger. 

Tal vez el problema es que estoy usando MS Management Studio, y conectando directamente al servidor, y no a ningún DB particular?

+0

No estoy muy seguro, pero ¿No puede hacer esto mediante seleccione la base de datos por primera vez? O digamos CREATE PROCEDURE [mydb] .mySchema.myProc – Rob

+0

No. Se queja: 'CREATE/ALTER PROCEDURE' no permite especificar el nombre de la base de datos como un prefijo al nombre del objeto. – kofucii

+1

Luego intente lo siguiente USE MyDb GO CREATE PROCEDURE mySchema.myProc – Rob

Respuesta

13

intente lo siguiente

USE MyDb 
GO 
CREATE PROCEDURE mySchema.myProc 
6

Parece que está creando el procedimiento en la base de datos maestra en lugar de su base de datos. Agregue Use MYDB sobre el script de creación del procedimiento almacenado y se creará en su base de datos.

Cuestiones relacionadas