【问题标题】:Create Stored Procedure for VIEW为 VIEW 创建存储过程
【发布时间】:2019-08-22 18:50:32
【问题描述】:

我正在尝试为视图创建一个存储过程,如下所示,但它抛出了一个错误

'N' 附近的语法不正确

如果我删除了引用,那么它会起作用。请建议我如何将值 N 放在引号中。

ALTER PROCEDURE [dbo].[SP_VIEW] 
AS
BEGIN
    EXECUTE('
        CREATE VIEW [dbo].[SP_VIEW]
        AS
            SELECT * 
            FROM [dbo].[ACTIVITY] 
            WHERE IND = 'N'')
END

【问题讨论】:

标签: sql sql-server


【解决方案1】:

SQL Server 不支持 here-string,因此您必须将每个 ' 加倍:

ALTER PROCEDURE  [dbo].[SP_VIEW] 
AS
BEGIN
    EXECUTE('
CREATE VIEW [dbo].[SP_VIEW]
AS
SELECT * FROM [dbo].[ACTIVITY] 
where IND=''N''
');
END

Azure 反馈:Add support for here-strings i T-SQL

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-11
    • 2016-11-11
    • 2021-12-08
    • 2017-10-14
    • 2021-07-10
    • 2015-08-27
    • 1970-01-01
    相关资源
    最近更新 更多