Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak utworzyć szablony procedur składowanych programu SQL Server 2005 w programie SQL Server 2005 Management Studio?

Kolejny mały samorodek, który moim zdaniem pomoże ludziom rozwijać się i zwiększać produktywność w rozwoju baz danych. Podczas tworzenia oprogramowania jestem fanem procedur i funkcji składowanych. Podoba mi się, że moje rzeczywiste metody CRUD są wdrażane na poziomie bazy danych. Pozwala mi to zrównoważyć moją pracę pomiędzy oprogramowaniem aplikacyjnym (logika biznesowa i dostęp do danych) a samą bazą danych. Nie chcę rozpoczynać wojny religijnej, ale chcę umożliwić ludziom szybsze opracowywanie zapisanych procedur i najlepszych praktyk za pomocą szablonów.

Zacznijmy od stworzenia własnych szablonów w SQL Server 2005 Management Studio. Najpierw musisz pokazać Eksplorator szablonów w Studio.

tekst alternatywny http://www.cloudsocket.com/images/image-thumb10.png

Spowoduje to wyświetlenie następujących informacji:

tekst alternatywny http://www.cloudsocket.com/images/image-thumb11.png

tekst alternatywny http://www.cloudsocket.com/images/image-thumb12.png

tekst alternatywny http://www.cloudsocket.com/images/image-thumb13.png

IDE utworzy pusty szablon. Aby edytować szablon, kliknij prawym przyciskiem myszy szablon i wybierz Edytuj. Otrzymasz puste okno zapytania w IDE. Możesz teraz wstawić implementację szablonu. Mam tutaj szablon nowej procedury składowanej, aby uwzględnić TRY CATCH. Lubię uwzględniać obsługę błędów w moich procedurach składowanych. Z nowym dodatkiem TRY CATCH do TSQL w SQL Server 2005, powinniśmy spróbować użyć tego potężnego mechanizmu obsługi wyjątków w naszym kodzie, w tym w kodzie bazy danych. Zapisz szablon i będziesz gotowy do użycia nowego szablonu do tworzenia procedury składowanej.

-- ======================================================
-- Create basic stored procedure template with TRY CATCH
-- ======================================================

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author:        <Author,,Name>
-- Create date: <Create Date,,>
-- Description:    <Description,,>
-- =============================================
CREATE PROCEDURE <Procedure_Name, sysname, ProcedureName>
    -- Add the parameters for the stored procedure here
    <@Param1, sysname, @p1> <Datatype_For_Param1, , int> = <Default_Value_For_Param1, , 0>,
    <@Param2, sysname, @p2> <Datatype_For_Param2, , int> = <Default_Value_For_Param2, , 0>
AS
    BEGIN TRY
        BEGIN TRANSACTION    -- Start the transaction

        SELECT @p1, @p2

        -- If we reach here, success!
        COMMIT
    END TRY
    BEGIN CATCH
        -- there was an error
        IF @@TRANCOUNT > 0
        ROLLBACK

        -- Raise an error with the details of the exception
        DECLARE @ErrMsg nvarchar(4000), @ErrSeverity int
        SELECT @ErrMsg = ERROR_MESSAGE(), @ErrSeverity = ERROR_SEVERITY()

        RAISERROR(@ErrMsg, @ErrSeverity, 1)
    END CATCH
GO


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Uciekanie symboli specjalnych w Sqlcmd

  2. SQL Server:migracja procedur składowanych między bazami danych i instancjami

  3. jak wyświetlić wartość kolumny tylko raz, jeśli jest powtarzana i pusta, dopóki w sql nie pojawi się inna wartość?

  4. SQL Server, przekonwertować nazwaną instancję na instancję domyślną?

  5. TSQL - utwórz przechowywany proc wewnątrz wyciągu transakcji