Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как се създават шаблони за съхранени процедури на SQL Server 2005 в SQL Server 2005 Management Studio?

Друг малък елемент, който мисля, че ще помогне на хората да се развиват и да бъдат по-продуктивни в разработването на своите бази данни. Аз съм фен на съхранените процедури и функции, когато разработвам софтуерни решения. Харесва ми действителните ми CRUD методи да се прилагат на ниво база данни. Това ми позволява да балансирам работата си между приложния софтуер (бизнес логика и достъп до данни) и самата база данни. Не искам да започвам религиозна война, но искам да позволя на хората да разработват съхранени процедури по-бързо и с най-добри практики чрез шаблони.

Нека започнем с създаване на ваши собствени шаблони в SQL Server 2005 Management Studio. Първо, трябва да покажете Template Explorer в Studio.

алтернативен текст http://www.cloudsocket.com/images/image-thumb10.png

Това ще покаже следното:

алтернативен текст http://www.cloudsocket.com/images/image-thumb11.png

алтернативен текст http://www.cloudsocket.com/images/image-thumb12.png

алтернативен текст http://www.cloudsocket.com/images/image-thumb13.png

IDE ще създаде празен шаблон. За да редактирате шаблона, щракнете с десния бутон върху шаблона и изберете Редактиране. Ще получите празен прозорец за заявки в IDE. Вече можете да вмъкнете изпълнението на вашия шаблон. Имам тук шаблона на новата съхранена процедура, който включва TRY CATCH. Обичам да включвам обработка на грешки в моите съхранени процедури. С новата добавка TRY CATCH към TSQL в SQL Server 2005 трябва да се опитаме да използваме този мощен механизъм за обработка на изключения чрез нашия код, включително кода на базата данни. Запазете шаблона и сте готови да използвате новия си шаблон за създаване на съхранена процедура.

-- ======================================================
-- 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. Размер на типа данни на променлива в sql

  2. Базата данни [dbName] не е достъпна. (ObjectExplorer)

  3. Модел на регулярни изрази във функцията за замяна на SQL?

  4. Какво е SQL Operations Studio (SQLOPS)?

  5. Присъствие IN и OUT