目次 | 前の項目 | 次の項目 | JDBCTM ガイド: 入門 |
実際に使うことのできる SQL は、データベースごとに若干異なります。たとえば、データベースが異なると、外部結合のサポート方法も異なります。java.sql.DatabaseMetaData インタフェースで提供されている各種メソッドを使うと、特定のデータベースでサポートされている SQL の機能を正確に知ることができます。同様に、データベースによって構文の異なる SQL 機能も多くあり、これについても java.sql.DatabaseMetaData で調べることができます。ただし、JDBC 準拠のテストに合格するには、ドライバが少なくとも ANSI SQL-2 エントリレベルの構文とセマンティクスをサポートし、さらに第 11 章の一覧に示されている SQL 拡張機能をサポートしている必要があります。
最後に、トランザクション遮断レベルなど基本プロパティの中にも、データベースによって異なるものがあります。現在のデータベースがサポートしているデフォルトのプロパティとその範囲についても、DatabaseMetaData で取得できます。
固有機能を追加するには、既存の JDBC 型の新しいサブタイプを追加し、そこで固有機能のためのメソッドを提供します。Foobah 社を例にとると、標準の java.sql.Statement 型を継承する新しい Java 型 foobah.sql.FooBahStatement を定義し、その型で新しい機能を追加します。