Re: 問題ID: 8043
arashi1977
居住地: 広島
投稿数: 1715
設問には以下の条件設定があります。
引用:また、解説でも日付書式について以下のように言及されています。
引用:私の環境作成がおかしい可能性は否定できませんが、設問にある通り日本語環境で実行すると以下のように解説にあるとおりのエラーになります。
念のためNLS_LANGを変更して英語環境でsqlplusを起動して実行すると、エラーにならず結果が出力されますね。
qtaro3 さんの実行環境ではどうでしたか?
引用:
ただし、データベースの実行環境は日本語環境とし、日付書式は"RR-MM-DD"とします。
引用:
設問では、日本語環境で日付書式が"RR-MM-DD"であるのに対し、"DD-MON-RR"の形式で日付リテラルが指定されていますので、暗黙的なデータ変換が行われません。
# sqlplus pingt/oracle
SQL*Plus: Release 11.2.0.2.0 Production on 月 9月 26 14:39:16 2016
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
に接続されました。
SQL> SELECT employee_id, employee_name, hiredate FROM employees WHERE hiredate >= '30-APR-10';
SELECT employee_id, employee_name, hiredate FROM employees WHERE hiredate >= '30-APR-10'
*
行1でエラーが発生しました。:
ORA-01858: 数値を指定する箇所に数値以外の文字が指定されています
# NLS_LANG=AMERICAN_AMERICA sqlplus pingt/oracle
SQL*Plus: Release 11.2.0.2.0 Production on Mon Sep 26 14:41:15 2016
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
SQL> SELECT employee_id, employee_name, hiredate FROM employees WHERE hiredate >= '30-APR-10';
EMPLOYEE_ID EMPLOYEE_NAME HIREDATE
----------- --------------- ---------
1013 ???? 01-APR-11
1017 ???? 01-APR-12
1018 ??? 01-APR-12
1019 ???? 01-APR-12
1020 ???? 01-APR-12
1021 ??? 01-APR-12
1022 ??? 01-APR-12
7 rows selected.
投稿ツリー
-
問題ID: 8043
(qtaro3, 2016-9-26 12:58)
- Re: 問題ID: 8043 (arashi1977, 2016-9-26 14:43)
-
Re: 問題ID: 8043
(qtaro3, 2016-9-27 7:26)
- Re: 問題ID: 8043 (arashi1977, 2016-9-28 19:29)
-
Re: 問題ID: 8043
(qtaro3, 2016-9-29 0:08)
- Re: 問題ID: 8043 (arashi1977, 2016-9-29 9:44)
- Re: 問題ID: 8043 (qtaro3, 2016-10-1 19:18)