创建存储过程时,BEGIN/END块是否起作用?
例如,
CREATE PROCEDURE SPNAME
AS
SELECT * FROM TABLE与
CREATE PROCEDURE SPNAME
AS
BEGIN
SELECT * FROM TABLE
END发布于 2010-11-17 00:54:29
如CREATE PROCEDURE documentation中所示,开始/结束是可选的:
{ BEGIN sql_statement;END }
构成过程主体的一个或多个Transact-SQL语句。您可以使用可选的BEGIN和END关键字将语句括起来。有关信息,请参阅下面的“最佳实践”、“常规说明”以及“限制和限制”部分。
作为个人喜好的问题,我总是把它们包括在内。
发布于 2010-11-17 00:54:29
对我来说,这只是一个不必要的额外缩进级别。但是,如果您将其设置为带有BEGIN CATCH - END CATCH的BEGIN TRY - END TRY,那么它将添加一个真正的用途。
发布于 2010-11-17 00:52:58
后者只是一种很好的编程风格,据我所知,遵循通用的standards.They没有什么不同。
我个人认为在每个逻辑代码块周围使用BEGIN和END是有意义的,并提高了可读性(即使在存储过程的情况下也是如此)。
https://stackoverflow.com/questions/4196571
复制相似问题