java - 当我将冷漠服务器数据库转换为 Derby 数据库时如何解决这些问题

标签 java mysql sql-server derby executable-jar

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

错误就是它

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

要解决问题必须更改所有属性和表名称 将其放在括号之间

例如

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

无法运行其语法错误 必须更改为

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

然后就可以正常使用了 做这件事非常困难,我有 137 个查询语句包含很多 表和属性名称。

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

最佳答案

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

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

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

关于java - 当我将冷漠服务器数据库转换为 Derby 数据库时如何解决这些问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43987206/

相关文章:

java - java中mongodb的日期查询

java - 原始包装类中的问题

mysql - Ruby On Rails - Lynda.com - 上传导师文件

php - 按类别对 mysqli/PDO 结果进行分组并将其显示到组中

MySQL 文本索引只检查 256 个字符?

c# - 当前上下文中不存在 ConfigurationManager。我的代码有什么问题?

java - 如何确定 3 Card Game to Find Winner 中的纸牌图案?

sql - 比较行并计算同一行的列

sql - 查找多列的第一个非空值

java - 在Java中打开PGM图像