【问题标题】:Result set not permitted in BATCH STATEMENT - SQL AnywhereBATCH STATEMENT 中不允许的结果集 - SQL Anywhere
【发布时间】:2020-07-28 15:13:30
【问题描述】:

我是 SQL ANYWHERE 的新手。我将表名称作为输入参数传递。我想同时运行 delete 和 select 语句。我不知道我在哪里错过了我的逻辑。你能帮我做这件事吗?

我的程序是

ALTER PROCEDURE "dba"."spCallTrigger"(
  /* @parameter_name parameter_type [= default_value] [OUTPUT], ... */
                                       @TableName varchar(25) )
AS
BEGIN
    /* Type the procedure statements here */

//Exec "dba"."spCallTrigger" 'GTempTable'

SET OPTION ISQL_PRINT_RESULT_SET='ALL';

DECLARE @sql LONG VARCHAR
SET @sql = 'delete from dba.' + @TableName + ' where 1=2'
Execute ( @sql )

DECLARE @command LONG VARCHAR
SET @command = 'select * from dba.' + @TableName + 'Audit'
Execute ( @command )

END

【问题讨论】:

  • SQL Anywhere 与 SAP/Sybase ASE 不同。请说明是哪一个。

标签: sql sap-ase


【解决方案1】:
EXECUTE IMMEDIATE WITH RESULT SET ON  @command

这可能有效。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-30
    • 2019-12-04
    • 2016-01-25
    • 1970-01-01
    相关资源
    最近更新 更多