存储过程中带参数的 SYBASE 查询

问题描述 投票:0回答:1

在 SQL Server 存储过程中,我可以这样写:

begin
    declare 
    @sSQL       varchar(max),
    @cod1       varchar(10)

    set @sSQL='update myTable set col_name=''ERR'' where col_id=''' + @cod1 + '''';
    exec (@sSQL);
end;

如何使用 Sybase 存储过程执行相同操作?我需要执行带有变量的 SQL 命令。

当我尝试在 SYBASE 中编写相同的代码时,出现语法错误

exec (@sSQL);

sql sybase
1个回答
0
投票

你可以尝试这样的事情。

SET @sSQL = 'UPDATE myTable SET col_name = ''ERR'' WHERE col_id = ''' + @cod1 + ''''

EXECUTE IMMEDIATE @sSQL

由于 sybase 中不存在用于此目的的

exec()
,因此您可以使用
EXECUTE IMMEDIATE
作为快速解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.