HyperSQL:在存储过程中删除表

Posted

技术标签:

【中文标题】HyperSQL:在存储过程中删除表【英文标题】:HyperSQL: Drop Table in Stored Procedure 【发布时间】:2015-03-25 19:55:57 【问题描述】:

我是 HyperSQL 的新手(出于性能目的从 SQL Server 迁移到内存中的 dbms),所以如果这是一个语法问题,请原谅我。当我尝试在数据库管理器中执行以下查询时,它会抛出一个错误:“Unexpected token: DROP”

CREATE PROCEDURE bspTable_CleanUp(ProcesslogID INT, AlgorithmID INT)
MODIFIES SQL DATA
BEGIN ATOMIC

    DROP TABLE GlobalVariable IF EXISTS;
    ...
END;

是否不能从 HSQL 中的存储过程中删除表?或者这是我什至不应该尝试做的事情?

【问题讨论】:

【参考方案1】:

当前版本的 HSQLDB (2.3.2) 不允许在存储过程中使用任何 DDL 语句。这可能会在未来的版本中被允许。

【讨论】:

谢谢你,fredt,你知道有没有可以请求这些功能的论坛?

以上是关于HyperSQL:在存储过程中删除表的主要内容,如果未能解决你的问题,请参考以下文章

如何在存储过程中删除一张表,表名是作为参数传入的

[MSSQL]批量删除表名包含某字符串的数据表&批量删除存储过程包含某字符串的存储过程

在sql存储过程中循环并删除游标

批量删除Sql Server对象(表,存储过程,触发器)

sqlserver存储过程如何定期删除表中的数据 求代码

SQL Server数据库的存储过程中定义的临时表,真的有必要显式删除(drop table #tableName)吗?