我继承了一个 ms sql server 2008 服务器应用程序,在检查存储过程时,我注意到它们以 USE [ELECS]
语句开头,ELECS 是数据库名称。
当我尝试重新创建其中一个存储过程时,收到一条错误消息,指出存储过程不能有 use 语句。
Msg 154, Level 15, State 1, Procedure TESTME, Line 3 a USE database statement is not allowed in a procedure, function or trigger.
MS SQL Server 是否有允许这样做的特殊功能?
最佳答案
您很可能在 CREATE
/ALTER PROCEDURE
语句上方看到 USE
。
在这种情况下,它被用来设置应该更新过程的数据库。
它不能在存储过程中使用,但如果您希望引用不同的数据库,您可以在表引用中设置它。即:对于 SELECT
语句:
SELECT *
FROM [DatabaseName].dbo.[TableName]
关于sql-server - 使用 'use' 语句创建存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13419752/