【发布时间】:2014-07-30 18:00:13
【问题描述】:
我有一个问题。我正在临时创建以下程序。
当我以以下格式执行它时,它工作正常:
CREATE PROCEDURE Get_TableList_By_Name
@Proc_Name VARCHAR(255)
AS
BEGIN
SELECT * FROM sys.tables WHERE name LIKE '%' + @Proc_Name + '%'
END
GO
EXEC Get_TableList_By_Name 'norway'
GO
DROP PROCEDURE Get_TableList_By_Name
GO
但是当我以以下格式执行相同的 SQL 时,它会给出错误提示:“'GO' 附近的语法不正确。”
CREATE PROCEDURE Get_TableList_By_Name @Proc_Name VARCHAR(255) AS BEGIN SELECT * FROM sys.tables WHERE name LIKE '%' + @Proc_Name + '%' END GO EXEC Get_TableList_By_Name 'norway' GO DROP PROCEDURE Get_TableList_By_Name GO
CREATE PROCEDURE Get_TableList_By_Name @Proc_Name VARCHAR(255) AS BEGIN SELECT * FROM sys.tables WHERE name LIKE '%' + @Proc_Name + '%' END GO 1 EXEC Get_TableList_By_Name 'norway' GO 1 DROP PROCEDURE Get_TableList_By_Name GO 1
如何在单行中用 GO 语句编写相同的 SQL? 可能吗?如果不是那为什么?
谢谢, 维沙尔
【问题讨论】:
标签: sql sql-server sql-server-2008 tsql