他RDBMSとの互換性
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/04/25 00:31 UTC 版)
「Oracle Database」の記事における「他RDBMSとの互換性」の解説
RDBMSのデファクトスタンダードとも位置づけられる製品であるが、古くからの仕様を引きずるあまり、標準SQL規格に準拠していない点が多く、他RDBMSとの移行性は良くない場合がある。他RDBMSとの移行の際に問題となりうる主な点には以下のようなものがある。 可変長文字列において空文字列とNULLを区別しない。(正確には空文字列がNULLとして扱われる。例えば、以下の条件式は偽となる。) ''='' 比較演算子が通常の演算子としては認識されず、WHERE句の中でしか利用できない。 表を必要としないSELECT文でも、必ず何らかの表(通常DUAL表が用いられる)を参照するFROM句を書かなければならない。 テーブル名や列名、またその別名等に日本語などのマルチバイト文字を使用した場合必ず""で囲む必要があり、そうしないとSQLの動作が保障されず実際に異常な動作をすることが多い。プログラム言語内でSQL文字列をハードコーディングする際に、""で囲むルールを徹底することは非常に困難である。そのためテーブル名、列名、別名等には英数字および一部の記号(_、$、#)のみを使用することが推奨される。
※この「他RDBMSとの互換性」の解説は、「Oracle Database」の解説の一部です。
「他RDBMSとの互換性」を含む「Oracle Database」の記事については、「Oracle Database」の概要を参照ください。
- 他RDBMSとの互換性のページへのリンク