sql-server - SQL Server 中的匿名存储过程

标签 sql-server stored-procedures

在 Oracle 中,我们可以编写匿名块来快速测试逻辑,而无需将对象存储在数据库中。
SQL Server 是否支持匿名块?我试过谷歌,但它主要返回oracle的链接。

最佳答案

您可以使用 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();

关于sql-server - SQL Server 中的匿名存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10818419/

相关文章:

c# - 使用 LINQ 加密列数据

c# - SqlCommand 正确关闭连接

c# - 获取值存储过程 C#

mysql - 使用 JOIN 查询速度慢

sql-server - 存储过程会导致内存泄漏吗?

c# - 无论如何将 c# 函数转换为 sql server 存储过程?

sql - nvarchar 类型的唯一列

sql - 是否可以在sql中的另一个用户定义的表类型中使用用户定义的表类型

mysql - 将 MS SQL 存储过程移植到 MySQL

mysql - MAMP存储过程: Commands out of sync error