如何在Begin Try Catch SQL Server中使用批次分隔符

您所在的位置:网站首页 sql2008怎么生成脚本 如何在Begin Try Catch SQL Server中使用批次分隔符

如何在Begin Try Catch SQL Server中使用批次分隔符

2023-04-14 12:47| 来源: 网络整理| 查看: 265

我正在尝试创建SQL脚本,如果在任何单个SQL查询中出现错误,该脚本需要恢复所做的所有模式更改。但是,我尝试将表和过程连接到同一个.sql文件下运行,并尝试捕获错误(如果存在)。当我只使用表的时候,它是有效的,但是当我尝试添加过程时,它有一些问题,所以添加到单独的表和过程。但是我不能把Begin try和GO语句结合起来。

BEGIN TRANSACTION BEGIN TRY Create TABLE [dbo].[Persons_1]( [PersonID] [int] NULL, [LastName] [varchar](255) NULL, [FirstName] [varchar](255) NULL, [Address] [varchar](255) NULL, [City] [varchar](255) NULL ) ON [PRIMARY] ; Create TABLE [dbo].[Persons_2]( [PersonID] [int] NULL, [LastName] [varchar](255) NULL, [FirstName] [varchar](255) NULL, [Address] [varchar](255) NULL, [City] [varchar](255) NULL ) ON [PRIMARY] ; CREATE PROCEDURE [dbo].[AAAtest] AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- Select statements for procedure here Select * from Persons_1 ; END; COMMIT END TRY BEGIN CATCH ROLLBACK; THROW; -- Only if you want reraise an exception (to determine the reason of the exception) END CATCH


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3