• 締切済み

「ORA-00907: 右カッコがありません」について

以下のsql文はオラクルで「ORA-00907: 右カッコがありません」のエラーが起きました。 SELECT LOWER(TRIM('H' from 'Hello World')) FROM dual; SQL> SELECT LOWER(TRIM('H' from 'Hello World')) FROM dual; SELECT LOWER(TRIM('H' from 'Hello World')) FROM dual * 行:1でエラーが発生しました。 ORA-00907: 右カッコがありません。 宜しくお願いします。

  • Oracle
  • 回答数1
  • ありがとう数7

みんなの回答

  • ppg-2
  • ベストアンサー率39% (77/193)
回答No.1

>SQL> SELECT LOWER(TRIM('H' from 'Hello World')) FROM dual; >SQL> SELECT LOWER(TRIM('''H''' from '''Hello World''')) FROM dual; かな?

go991314
質問者

補足

私は使用のOracle SQL*PLUSのバージョンが3.3.2.0.2、たぶんバージョンの原因かもしれません。

関連するQ&A

  • ORA-14459: GLOBALキーワードがありません。

    ORA-14459: GLOBALキーワードがありません。 以下のSQLを実行したところエラーになりました。 GLOBALキーワードとは何でしょうか?原因を教えてください。 SQL> CREATE TEMPORARY TABLE TEST AS SELECT SYSDATE FROM DUAL; CREATE TEMPORARY TABLE TEST AS SELECT SYSDATE FROM DUAL * 行1でエラーが発生しました。: ORA-14459: GLOBALキーワードがありません。 ORACLE 10g Windows 2008

  • ORA-00979エラーについて

    Oracle Database 10g Release 10.2.0.5.0で下記のSQLを 実行するとエラーが発生します。 Oracle Database 10g Release 10.1.0.4.0ではエラーが 発生しません。 何かバージョンによって違いがあるのでしょうか? -----SQL文-------------------------- SELECT v1.TEST1 AS TEST1, v1.TEST2 AS TEST2 FROM TESTv v1 WHERE v1.TEST4 = '999999' GROUP BY v1.TEST1, v1.TEST2 ORDER BY v1.TEST5 ------------------------------------ ---エラー--------------------------------- v1.TEST5 * 行14でエラーが発生しました。: ORA-00979: GROUP BYの式ではありません。 ------------------------------------------

  • ORA-12598

    ORACLE R7.3のSQL/NETで「ORA-12598(765)」のエラーが出てしまいました。 MSG集も無く、苦労しております。何のエラーか分かりませんか?

  • ORA-01861について

    Oracleで同一インスタンスの別スキーマに同じテーブル構成を作り開発環境としています。 そこで下記のSQL文を実行しようとすると、あるスキーマでは正常に検索されるけど別のスキーマでは 「ORA-01861 リテラルがフォーマット文字列と一致しません」 とのエラーメッセージが出力されます。 また困ったことに別マシンから同様の検索を行うとどのスキーマでも正常に検索が行われます。 Net8とかOracleクライアントの設定の問題でしょうか? DBサーバはOracle10g、クライアントは前者のマシンがOracle8i、後者のマシンにOracle9iがインストールされています。 【対象SQL文】 SELECT * FROM (SELECT TEMP.*, ROWNUM AS RM FROM (SELECT TEST.COL1, TEST.COL2 FROM TEST WHERE (COL1 = 'Dummy') AND COL2 = '1' AND DATE_COL <= '2005-11-04 12:00:00.0' -- ※この行に対して「ORA-01861」が発生しています。 ) TEMP ) WHERE RM >= 1 AND RM <= 300 ORDER BY RM /

  • ORA-01438について

    OracleのPL/SQLの作成で "ORA-01438: 指定した精度を超えた値が列に指定されています"の エラーメッセージが出てしまいます。 PL/SQL上で、値が整数2桁+少数2桁 となるところを計算式を修正し 整数4桁になるようにしたところ、ORA-01438が出るようになりました。 ちなみに全てselectのはずです。 該当のカラムは副問い合わせを介してテーブルから呼んでいるのですが、 大本のカラムには精度(桁数)指定はありません。 いったいこれは何の精度指定に引っ掛かっているのでしょうか。 考えられる可能性を提示して頂けると大変助かります。

  • ORACLE init.oraの設定

    ORACLEのパラメータを変更するために、init.oraの設定を行いたいのですが、以下のコマンドをSQLPLUSで実行するのですがエラーになってしまいます。 どのようにしたら実行できるのでしょうか? 教えてください。 SQL> startup pfile=E:\oracle\admi ORA-01031: 権限が不足しています。 使用環境    ORACLE VERは9.2.0.1.0    OS   XP 宜しくお願いします。

  • 正しいSQLなのに「ORA-00936: 式がありません。」となる

     DBサーバを3台用意して、あるSQLを実行したところ、2台では期待した結果が得られたのですが、1台では「ORA-00936: 式がありません。」のエラーになってしまいます。  SQLの余分な空白を削除すると「右カッコがありません」「FROMがありません」等とエラーメッセージが変わるので、SQLの途中までしか認識されていない様子です。  SQLは2段階のサブクエリーで構成されており、全体の長さは1k程度です。  2台のPCでは問題なく動作するので、SQLが間違っていることはありません。  また、サブクエリーの中で「UNION ALL」を使っているのですが、これを「UNION」とするとエラーは起きません。  なにか、原因として考えられることはないでしょうか?  PCの環境は、   OS = WinXP SP2   DB = Oracle 9.2.0.1 、同一dmpファイルをインポートした状態 となっていますが、それぞれ別の者がインストール作業を行ったので、若干の違いがあるかも知れません。(インストール時のメモでは違いはありません)

  • OracleのSQLについて

    OracleのSQLについて質問があります。 VARCHAR2をReturnするFunction「GETKANANAME(引数はID)」があるとします。 このとき Update NAMELIST SET kananame = (select GETKANANAME('00001') from dual); とすると、kananameに何も設定されません。 (エラーメッセージなどは何も出ていません。) select GETKANANAME('00001') from dual; だと期待する値が帰ってくるのですが…。 何か間違ったSQL文なのでしょうか?

  • ORAー12560:TNS:protocol adapter error

    初心者です。ORACLE9iをインストールしました。コマンドラインから sqlplus /nolog SQL>connect /as sysdba と実行しますが、ERROR:ORAー12560:TNS:protocol adapter error となり接続出来ません。スタートメニューからSQL Plusを起動しても同エラーとなります。ORACLE関係のサービスは起動しており、ログインユーザはORACLEをインストールしたユーザでORA_DBAグループにも登録されています。OS再起動を実施しても同エラーです。OSはwindows2000Proです。どこをチェックすれば宜しいでしょうか。

  • SQL*PLUSで列幅変更したい。

    こんにちわ。 いまORACLE9iを使用している者です。 SQL*PLUSで, つぎのようなSELECT文を発行しました。 「SELECT HOGEKBN AS ほげほげ区分 FROM HOGE_TABLE」 「HOGEKBN」は1桁のデータなので, 実行結果に列名である"ほげほげ区分"が表示されません。 これを表示したいと思い, 「 SELECT HOGEKBN AS ほげほげ区分 FROM HOGE_TABLE COLUMN ほげほげ区分 FORMAT A20 」 としたところ, COLUMN~の行で, "ORA-00933: SQLコマンドが正しく終了されていません。" というエラーメッセージが出てしまいます。 SQL*PLUSで列幅指定するにはどうすれば良いでしょうか? 教えてください。よろしくお願いします。