Netbeans 如果存在,则在Derby中无法识别
导致错误Netbeans 如果存在,则在Derby中无法识别,netbeans,derby,Netbeans,Derby,导致错误 DROP TABLE IF EXISTS Pose ; 我使用默认的Derby示例数据库从NetBeans 7.3内部运行这个 Derby目前不支持IF EXISTS用于声明表的MySQL 6.0语法如下: Error code -1, SQL state 42X01: Syntax error: Encountered "EXISTS" at line 1, column 15. CREATE TABLE [IF NOT EXISTS] tableName ... 用于删除表
DROP TABLE IF EXISTS Pose ;
我使用默认的Derby示例数据库从NetBeans 7.3内部运行这个 Derby目前不支持IF EXISTS用于声明表的MySQL 6.0语法如下:
Error code -1, SQL state 42X01: Syntax error: Encountered "EXISTS" at line 1, column 15.
CREATE TABLE [IF NOT EXISTS] tableName ...
用于删除表的MySQL语法如下:
Error code -1, SQL state 42X01: Syntax error: Encountered "EXISTS" at line 1, column 15.
CREATE TABLE [IF NOT EXISTS] tableName ...
这些子句是MySQL扩展,不属于ANSI/ISO SQL标准的一部分。这一功能可能是MySQL特有的:我找不到任何类似的文档,用于Derby、Postgres、Oracle或DB2。我能找到的最佳替代方法是查询系统表,查看该表是否存在
从sys.systables中选择count(*),其中tablename='YOUR_TABLE_NAME'
我在删除存储过程时遇到了类似的问题。可以使用以下语句查询存储过程
从sys.sysalias中选择count(*),其中alias='YOUR_storage_PROCEDURE_NAME'
是否尝试创建表?如果是,则应执行以下操作:
DROP TABLE [IF EXISTS] tableName ...
记住对传递到
databaseMetadata.getTables(…)中的表名使用所有大写字母
如果有人希望删除并在使用Spring测试框架运行的sql文件中创建一个表,请检查答案,确保在调用drop table时,在该表不存在时不会引发异常。这是mysql还是apache derby?它们不是同一回事,也不支持完全相同的sql语言。I不知道!这是apache derby。它是否支持if exists的某些变体?