次の方法で共有


getTypeInfo メソッド (SQLServerDatabaseMetaData)

現在のデータベースによってサポートされる、すべての標準 SQL 型に関する記述を取得します。

構文

public java.sql.ResultSet getTypeInfo()

戻り値

SQLServerResultSet オブジェクトです。

例外

SQLServerException

解説

getTypeInfo メソッドは、java.sql.DatabaseMetaData インターフェイスの getTypeInfo メソッドで規定されています。

getTypeInfo メソッドによって返される結果セットには、次の情報が含まれます。

名前 種類 説明

TYPE_NAME

String

データ型の名前です。

DATA_TYPE

short

java.sql.Types の SQL データ型です。

PRECISION

int

有効桁数です。

LITERAL_PREFIX

String

定数の先頭に記述する文字です。

LITERAL_SUFFIX

String

定数の末尾に記述する文字です。

CREATE_PARAMS

String

データ型の作成パラメーターの記述です。

NULLABLE

short

列に null 値を含めることができるかどうかを示します。次のいずれかの値を指定します。

typeNoNulls (0)

typeNullable (1)

typeNullableUnknown (2)

CASE_SENSITIVE

boolean

データ型の大文字と小文字を区別するかどうかを示します。大文字と小文字を区別する場合は "true"、区別しない場合は "false" です。

SEARCHABLE

short

列を SQL の WHERE 句で使用できるかどうかを示します。次のいずれかの値を指定します。

typePredNone (0)

typePredChar (1)

typePredBasic (2)

typeSeachable (3)

UNSIGNED_ATTRIBUTE

boolean

データ型の符号を示します。符号なしの場合は "true"、符号ありの場合は "false" です。

FIXED_PREC_SCALE

boolean

データ型に money 値を指定できるかどうかを示します。money 型の場合は "true"、それ以外の場合は "false" です。

AUTO_INCREMENT

boolean

データ型を自動インクリメントできるかどうかを示します。自動インクリメントできる場合は "true"、それ以外の場合は "false" です。

LOCAL_TYPE_NAME

String

データ型のローカライズされた名前です。

MINIMUM_SCALE

short

小数点以下の最大桁数です。

MAXIMUM_SCALE

short

小数点以下の最小桁数です。

SQL_DATA_TYPE

int

JDBC ドライバーではサポートされていません。

SQL_DATETIME_SUB

int

JDBC ドライバーではサポートされていません。

NUM_PREC_RADIX

int

列が保持できる最大数を計算する場合のビット数または桁数です。

INTERVAL_PRECISION

smallint

期間の先頭の有効桁数の値です。

USERTYPE

smallint

systypes テーブルからの usertype 値です。詳細については、SQL Server オンライン ブックを参照してください。

注意

getTypeInfo メソッドによって返されるデータの詳細については、SQL Server オンライン ブックの「sp_datatype_info (Transact-SQL)」を参照してください。

次の例では、getTypeInfo メソッドを使用して、SQL Server 2005 以降のサンプル データベースで使用されるデータ型に関する情報を返す方法を示します。

public static void executeGetTypeInfo(Connection con) {
   try {
      DatabaseMetaData dbmd = con.getMetaData();
      ResultSet rs = dbmd.getTypeInfo();
      ResultSetMetaData rsmd = rs.getMetaData();

      // Display the result set data.
      int cols = rsmd.getColumnCount();
      while(rs.next()) {
         for (int i = 1; i <= cols; i++) {
            System.out.println(rs.getString(i));
         }
      }
      rs.close();
   } 

   catch (Exception e) {
      e.printStackTrace();
   }
}

参照

リファレンス

SQLServerDatabaseMetaData クラス

概念

SQLServerDatabaseMetaData のメソッド
SQLServerDatabaseMetaData のメンバー