【发布时间】:2013-08-07 07:23:00
【问题描述】:
我试图在创建存储过程后直接执行它,但是它没有被调用。在执行调用期间似乎尚未创建存储过程。
脚本如下所示:
CREATE PROCEDURE sp_Transfer_RegionData
AS
BEGIN
INSERT INTO Region (regionName)
SELECT column1
FROM openquery(ITDB, 'select * from db.table1')
END
EXEC sp_Transfer_RegionData
脚本运行良好,但未填充所需的表。将执行部分替换为:
IF OBJECT_ID('sp_Transfer_RegionData') IS NOT NULL
begin
exec [dbo].[sp_Transfer_RegionData]
print 'tada'
end
我可以看到存储过程在必须执行时不存在。在互联网上找不到解决方案...
那么如何让SQL脚本同步运行,使得存储过程在执行部分就已经存在呢?
【问题讨论】:
-
拜托,你能告诉我创建过程后有什么消息吗?
-
您需要
GO还是COMMIT? -
@vikramjain 没有发生错误。我成功完成了一个命令。
-
CREATE PROCEDURE: "在命名过程时避免使用 sp_ 前缀。SQL Server 使用此前缀来指定系统过程。"
标签: sql sql-server tsql stored-procedures