3

在 Oracle 中,我们可以编写匿名块来快速测试逻辑,而无需将对象存储在数据库中。

SQL Server 是否支持匿名块?我试过google,但它主要返回oracle的链接。

4

1 回答 1

9

您可以使用 SSMS 测试 T-SQL 的任何“块”,而无需创建任何类型的对象(存储过程或函数)。只需声明您的变量,如果您需要的话,然后编写您的代码。

例如,如果这是您要测试的存储

USE [MyDatabase]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER PROCEDURE [MySchema].[proc_modifySomething]
      @ID int
    , @Language char(2) = NULL
AS
BEGIN

    SET NOCOUNT ON;

    DECLARE @ITEMTYPE_EVENT varchar(2)      = 'J';  
    DECLARE @CURRENTDATE datetime           = GETDATE();

你应该写:

DECLARE
      @ID int
    , @Language char(2) = NULL
BEGIN

    SET NOCOUNT ON;

    DECLARE @ITEMTYPE_EVENT varchar(2)      = 'J';  
    DECLARE @CURRENTDATE datetime           = GETDATE();
于 2012-05-30T14:36:48.443 回答