Db2 SQL 查询特有的错误

问题描述 投票:0回答:3

我正在使用 Hacker Rank 充分学习 SQL 以通过编码面试。

当我使用 DB2 运行在线编译器时,我注意到在线编译器出现错误。在 Oracle、MS MS SQL SERVER 或 MySQL 中不会产生错误。

以下代码是上面发布的问题的解决方案。

SELECT * 
FROM City 
WHERE Countrycode = 'JPN';

它在除 Db2 之外的所有内容中返回以下内容:

1613 Neyagawa JPN Osaka 257315 
1630 Ageo JPN Saitama 209442 
1661 Sayama JPN Saitama 162472 
1681 Omuta JPN Fukuoka 142889 
1739 Tokuyama JPN Yamaguchi 107078

但是由于某种原因,使用 DB2 它会返回解决方案,然后返回一条错误消息:

1613 Neyagawa JPN Osaka 257315 
1630 Ageo JPN Saitama 209442 
1661 Sayama JPN Saitama 162472 
1681 Omuta JPN Fukuoka 142889 
1739 Tokuyama JPN Yamaguchi 107078 

DB21034E 该命令被作为 SQL 语句处理,因为它不是有效的命令行处理器命令。在 SQL 处理过程中,它返回:
SQL0104N 在“k line.*/ uncatalog”之后发现了意外的标记“database”。预期的标记可能包括:“JOIN ”。
SQLSTATE=42601

Db2 的使用范围有多广?如何避免这个错误?

sql db2
3个回答
1
投票

数据库未编目时会提示此错误。 Db2 需要目录才能获得正确答案。您检查数据库是否在本地目录中编目并运行该程序。在 hackerrank 上,我们无法检查数据库,因此会出现错误。


0
投票

我只是做了同样的事情,结果我只需要添加“;”在该行的末尾,如说明所述。来自Python,我忘了


0
投票

你可以做的就是删除黑客排名底部的评论,这对我有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.