当我将冷漠服务器数据库转换为德比数据库时,如何解决这些问题

Posted

技术标签:

【中文标题】当我将冷漠服务器数据库转换为德比数据库时,如何解决这些问题【英文标题】:how can solve these trouble when i convert form apathy server DB to derby DB 【发布时间】:2017-05-15 19:17:03 【问题描述】:

因为我将我的 concoction DB 转换为 netbeans 中的 derby 所有语句都发生错误。

错了

java.sql.SQLSyntaxErrorException: table or view does not exist.

解决问题必须改变所有属性和表名 by 把它放在括号中

例如

st.executeQuery("SELECT * FROM   loges ");

不运行它的语法错误 必须改为

st.executeQuery("SELECT * FROM   \"loges\" ");

然后它可以正常工作 这样做很辛苦,我有 137 条查询语句包含很多 表和属性名称。

我正在做此更改,因为将我的项目解压缩到可执行的桌面程序 如果能以其他方式做到这一点会很好

【问题讨论】:

您应该决定您正在使用哪个 DBMS 并适当地标记它们,而不是标记所有它们。 Problems with escaping table and field names in Derby and Hsqldb的可能重复 您应该创建不带双引号的表格,如重复问题中所述。 【参考方案1】:

如果您的代码使用所有不带引号的表和列名,那么您的数据库架构应该使用不带引号的名称创建。

如果您现在遇到问题,那么您的新数据库是使用带引号的名称创建/迁移的。修复它,您的代码将保持不变。

请注意,数据库对未加引号的名称的处理方式不同,例如Oracle 会将名称更改为大写,PostgreSQL 会将名称更改为小写,MS SQL Server 将存储给定的名称,但默认情况下不区分大小写。

【讨论】:

【参考方案2】:

您应该创建不带双引号的表格,如重复问题中所述

【讨论】:

以上是关于当我将冷漠服务器数据库转换为德比数据库时,如何解决这些问题的主要内容,如果未能解决你的问题,请参考以下文章

为啥当我将 Meteor 应用程序转换为使用 Docker 时,我的 MongoDB 数据会消失?

当我将此数据帧转换为字典时,为啥索引设置不正确?

当我将网站上传到生产环境时,如何修复错误 500

德比足球_德比数据__国足世界杯卡塔尔

德比数据库中限制记录组的sql

德比足球_德比APP_皇马靠防守追平巴萨