sql >> Databasteknik >  >> RDS >> Sqlserver

TSQL - skapa en lagrad proc i ett transaktionsutdrag

försök göra create procedure i EXEC('...') , så här:

Begin Try
Begin Transaction 
    -- do a bunch of add/alter tables here
    -- do a bunch of data manipulation/population here

    -- create a stored proc
  EXEC ('create procedure dbo.test
  as
  begin
    select * from some_table
  end')
Commit  
End Try
Begin Catch
    Rollback  
    Declare @Msg nvarchar(max)
    Select @Msg=Error_Message();
    RaisError('Error Occured: %s', 20, 101,@Msg) With Log;
End Catch

GO


  1. Syntaxfel vid användning av avgränsare med Aurora Serverless MySQL 5.6

  2. Effektiv senaste postfråga med Postgresql

  3. Ta reda på om en CHECK-begränsning är kolumnnivå eller tabellnivå i SQL Server (T-SQL-exempel)

  4. Oracle Install för SSIS-anslutning (och drivrutiner 32 64 bitar)