Hitachi

Hitachi Advanced Data Binder AP開発ガイド


8.7.1 DatabaseMetaDataインタフェースのメソッド一覧

〈この項の構成〉

(1) DatabaseMetaDataインタフェースの主な機能

DatabaseMetaDataインタフェースでは,主に次の機能が提供されています。

(2) HADBでサポートしているDatabaseMetaDataインタフェースのメソッド

HADBでサポートしているDatabaseMetaDataインタフェースのメソッドの一覧を次の表に示します。

表8‒47 DatabaseMetaDataインタフェースのメソッドの一覧

項番

DatabaseMetaDataインタフェースのメソッド

機能

1

allProceduresAreCallable()

getProceduresメソッドによって返されるすべてのプロシジャが,現在のHADBユーザから呼び出せるかどうかを取得します。

2

allTablesAreSelectable()

getTablesメソッドによって返されるすべての表が,現在のHADBユーザによって使用できるかどうかを取得します。

3

autoCommitFailureClosesAllResultSets()

自動コミットモード有効時にSQLExceptionが発生した場合,すべてのオープンされたResultSetがクローズされるかどうかを返却します。

4

dataDefinitionCausesTransactionCommit()

トランザクションのデータ定義文が,トランザクションを強制的にコミットさせるかどうかを取得します。

5

dataDefinitionIgnoredInTransactions()

トランザクションでデータ定義文が無視されるかどうかを取得します。

6

deletesAreDetected(int type)

ResultSetクラスのrowDeletedメソッドを呼び出すことによって可視の行が削除されたことを検出できるかどうかを取得します。

7

doesMaxRowSizeIncludeBlobs()

getMaxRowSizeメソッドの戻り値がSQLデータの型のLONGVARCHARおよびLONGVARBINARYを含むかどうかを取得します。

8

generatedKeyAlwaysReturned()

自動生成キーの列として指定された列名またはインデクスが有効であり,かつ文が成功した場合に,生成されたキーが常に返されるかどうかを取得します。

9

getAttributes(String catalog, String schemaPattern, String typeNamePattern, String attributeNamePattern)

指定されたスキーマおよびカタログで使用可能なユーザ定義の型 (UDT)のための指定された型の指定された属性に関する記述を取得します。

10

getBestRowIdentifier(String catalog, String schema, String table, int scope, boolean nullable)

行を一意に識別する表の最適な列セットに関する記述を取得します。

11

getCatalogs()

カタログ名を取得します。

12

getCatalogSeparator()

カタログ名と表名のセパレータを取得します。

13

getCatalogTerm()

catalogに対する推奨用語を取得します。

14

getClientInfoProperties()

ドライバがサポートするクライアント情報プロパティのリストを返却します。

15

getColumnPrivileges(String catalog, String schema, String table, String columnNamePattern)

表の列へのアクセス権に関する記述を取得します。

16

getColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern)

表の列情報を取得します。

17

getConnection()

このDatabaseMetaDataインスタンスを生成したConnectionインスタンスを取得します。

18

getCrossReference(String parentCatalog, String parentSchema, String parentTable, String foreignCatalog, String foreignSchema, String foreignTable)

指定された参照表と指定された被参照表とのクロスリファレンス情報を取得します。

19

getDatabaseMajorVersion()

データベース(HADBサーバ)のメジャーバージョンを取得します。

20

getDatabaseMinorVersion()

データベース(HADBサーバ)のマイナーバージョンを取得します。

21

getDatabaseProductName()

接続するデータベース(HADBサーバ)の製品名称を取得します。

22

getDatabaseProductVersion()

接続するデータベース(HADBサーバ)のバージョンを取得します。

23

getDefaultTransactionIsolation()

このデータベースのデフォルトのトランザクション隔離性水準を取得します。

24

getDriverMajorVersion()

JDBCドライバのメジャーバージョンを取得します。

25

getDriverMinorVersion()

JDBCドライバのマイナーバージョンを取得します。

26

getDriverName()

JDBCドライバの名前を取得します。

27

getDriverVersion()

JDBCドライバのバージョンを取得します。

28

getExportedKeys(String catalog, String schema, String table)

参照表の外部キーに関する情報を取得します。

29

getExtraNameCharacters()

二重引用符(")で囲まれていない識別名に使用できるすべての特殊文字を取得します。

30

getFunctionColumns(String catalog, String schemaPattern, String functionNamePattern, String columnNamePattern)

関数のパラメタおよび返される型に関する情報を返却します。

31

getFunctions(String catalog, String schemaPattern, String functionNamePattern)

関数に関する情報を返却します。

32

getIdentifierQuoteString()

SQL識別子を引用するのに使用する文字列を取得します。

33

getImportedKeys(String catalog, String schema, String table)

被参照表の主キーに関する情報を取得します。

34

getIndexInfo(String catalog, String schema, String table, boolean unique, boolean approximate)

インデクスに関する情報を取得します。

35

getJDBCMajorVersion()

ドライバのJDBCメジャーバージョンを取得します。

36

getJDBCMinorVersion()

ドライバのJDBCマイナーバージョンを取得します。

37

getMaxBinaryLiteralLength()

バイナリリテラル中に入れることができる16進数の最大文字数を取得します。

38

getMaxCatalogNameLength()

カタログ名の最大文字数を取得します。

39

getMaxCharLiteralLength()

文字データとして指定できる最大文字数を取得します。

40

getMaxColumnNameLength()

列名に指定できる最大文字数を取得します。

41

getMaxColumnsInGroupBy()

GROUP BY句中に指定できるグループ化列の数の最大値を取得します。

42

getMaxColumnsInIndex()

インデクス構成列数の最大値を取得します。

43

getMaxColumnsInOrderBy()

ORDER BY句中に指定できる列数の最大値を取得します。

44

getMaxColumnsInSelect()

選択リストに指定できる選択式の最大数を取得します。

45

getMaxColumnsInTable()

表に定義できる列数の最大値を取得します。

46

getMaxConnections()

同時にHADBサーバに接続できるHADBクライアントの最大数を取得します。

47

getMaxCursorNameLength()

カーソル名の最大文字数を取得します。

48

getMaxIndexLength()

インデクスのキー長の最大値を取得します。

49

getMaxLogicalLobSize()

このデータベースで,LOBの論理サイズとして許容される最大バイト数を取得します。

50

getMaxProcedureNameLength()

プロシジャ名の最大文字数を取得します。

51

getMaxRowSize()

1行の最大バイト数を取得します。

52

getMaxSchemaNameLength()

スキーマ名の最大文字数を取得します。

53

getMaxStatementLength()

SQL文に指定できる文字列長の最大値を取得します。

54

getMaxStatements()

同時実行できるSQL文の最大数を取得します。

55

getMaxTableNameLength()

表名に指定できる最大文字数を取得します。

56

getMaxTablesInSelect()

SELECT文中に指定できる表数の最大値を取得します。

57

getMaxUserNameLength()

認可識別子の最大文字数を取得します。

58

getNumericFunctions()

使用できる数学関数をコンマで区切ったリストで取得します。

59

getPrimaryKeys(String catalog, String schema, String table)

指定された表の主キー列の記述を取得します。

60

getProcedureColumns(String catalog, String schemaPattern, String procedureNamePattern, String columnNamePattern)

ストアドプロシジャパラメタに関する記述を取得します。

61

getProcedures(String catalog, String schemaPattern, String procedureNamePattern)

ストアドプロシジャに関する記述を取得します。

62

getProcedureTerm()

procedureに対する推奨用語を取得します。

63

getPseudoColumns(String catalog,String schemaPattern,String tableNamePattern,String columnNamePattern)

指定されたカタログおよびスキーマ内の特定の表で使用できる擬似列または隠し列の説明を取得します。

64

getResultSetHoldability()

ResultSetオブジェクトのデフォルトの保持機能を取得します。

65

getRowIdLifetime()

RowId型をサポートしているかどうかを示します。また,サポートしている場合は,RowIdオブジェクトが有効である期間も示します。

66

getSchemas()

スキーマ名を取得します。

67

getSchemas(String catalog, String schemaPattern)

スキーマ名を取得します。

68

getSchemaTerm()

schemaに対する推奨用語を取得します。

69

getSearchStringEscape()

ワイルドカード文字をエスケープするために使用する文字列を取得します。

70

getSQLKeywords()

データベース固有のSQLキーワードであり,かつSQL:2003のキーワードではないすべてのキーワードを,コンマで区切ったリストで取得します。

71

getSQLStateType()

SQLExceptionクラスのgetSQLStateメソッドによって返されるSQLSTATEがX/Open(現在はOpen Group)のSQL CLIであるかSQL:2003であるかを取得します。

72

getStringFunctions()

使用できる文字列関数をコンマで区切ったリストで取得します。

73

getSuperTables(String catalog, String schemaPattern, String tableNamePattern)

特定のスキーマで定義されているテーブル階層の情報を取得します。

74

getSuperTypes(String catalog, String schemaPattern, String typeNamePattern)

特定のスキーマで定義されているユーザ定義型(UDT)階層の情報を取得します。

75

getSystemFunctions()

使用できるシステム関数をコンマで区切ったリストで取得します。

76

getTablePrivileges(String catalog, String schemaPattern, String tableNamePattern)

表に対するアクセス権限に関する情報を取得します。

77

getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types)

表に関する情報を取得します。

78

getTableTypes()

表の種類を取得します。

79

getTimeDateFunctions()

使用できる時間関数と日付関数をコンマで区切ったリストで取得します。

80

getTypeInfo()

標準SQLの型に関する情報を取得します。

81

getUDTs(String catalog, String schemaPattern, String typeNamePattern, int[] types)

ユーザ定義型(UDT)に関する情報を取得します。

82

getURL()

HADBサーバの接続先情報を指定したURLを取得します。

83

getUserName()

HADBサーバに接続した認可識別子を取得します。

84

getVersionColumns(String catalog, String schema, String table)

行の任意の値が変更された場合に,自動的に更新される表の列に関する記述を取得します。

85

insertsAreDetected(int type)

ResultSetクラスのrowInsertedメソッドを呼び出すことによって可視の行が挿入されたことを検出できるかどうかを取得します。

86

isCatalogAtStart()

完全修飾された表名の開始部分(または終了部分)にカタログが現れるかどうかを取得します。

87

isReadOnly()

読み取り専用モードかどうかを取得します。

88

locatorsUpdateCopy()

LOBへの変更が,コピーに対して行われたのか,LOBに直接行われたのかを示します。

89

nullPlusNonNullIsNull()

ナル値と非ナル値の連結をナル値とするかどうかを取得します。

90

nullsAreSortedAtEnd()

ソート指定の順序付け指定に関係なく,ナル値が末尾に並べ替えられるかどうかを取得します。

91

nullsAreSortedAtStart()

ソート指定の順序付け指定に関係なく,ナル値が先頭に並べ替えられるかどうかを取得します。

92

nullsAreSortedHigh()

ナル値が高位にソートされるかどうかを取得します。

93

nullsAreSortedLow()

ナル値が低位にソートされるかどうかを取得します。

94

othersDeletesAreVisible(int type)

ほかで行われた削除が可視かどうかを取得します。

95

othersInsertsAreVisible(int type)

ほかで行われた挿入が可視かどうかを取得します。

96

othersUpdatesAreVisible(int type)

ほかで行われた更新が可視かどうかを取得します。

97

ownDeletesAreVisible(int type)

結果セット自身の削除が可視かどうかを取得します。

98

ownInsertsAreVisible(int type)

結果セット自身の挿入が可視かどうかを取得します。

99

ownUpdatesAreVisible(int type)

結果セット自身の更新が可視かどうかを取得します。

100

storesLowerCaseIdentifiers()

大文字と小文字が混在する二重引用符なしのSQL識別子を,大文字と小文字を区別しないで処理し,小文字で格納するかどうかを取得します。

101

storesLowerCaseQuotedIdentifiers()

大文字と小文字が混在する二重引用符付きのSQL識別子を,大文字と小文字を区別しないで処理し,小文字で格納するかどうかを取得します。

102

storesMixedCaseIdentifiers()

大文字と小文字が混在する二重引用符なしのSQL識別子を,大文字と小文字を区別しないで処理し,大文字と小文字混在で格納するかどうかを取得します。

103

storesMixedCaseQuotedIdentifiers()

大文字と小文字が混在する二重引用符付きのSQL識別子を,大文字と小文字を区別しないで処理し,大文字と小文字混在で格納するかどうかを取得します。

104

storesUpperCaseIdentifiers()

大文字と小文字が混在する二重引用符なしのSQL識別子を,大文字と小文字を区別しないで処理し,大文字で格納するかどうかを取得します。

105

storesUpperCaseQuotedIdentifiers()

大文字と小文字が混在する二重引用符付きのSQL識別子を,大文字と小文字を区別しないで処理し,大文字で格納するかどうかを取得します。

106

supportsAlterTableWithAddColumn()

列追加のあるALTER TABLEがサポートされているかどうかを取得します。

107

supportsAlterTableWithDropColumn()

列削除のあるALTER TABLEがサポートされているかどうかを取得します。

108

supportsANSI92EntryLevelSQL()

ANSI92エントリレベルのSQL文法がサポートされているかどうかを取得します。

109

supportsANSI92FullSQL()

ANSI92完全レベルのSQL文法がサポートされているかどうかを取得します。

110

supportsANSI92IntermediateSQL()

ANSI92中間レベルのSQL文法がサポートされているかどうかを取得します。

111

supportsBatchUpdates()

バッチ更新がサポートされているかどうかを取得します。

112

supportsCatalogsInDataManipulation()

データ操作文でカタログ名を使用できるかどうかを取得します。

113

supportsCatalogsInIndexDefinitions()

インデクス定義文でカタログ名を使用できるかどうかを取得します。

114

supportsCatalogsInPrivilegeDefinitions()

権限付与の定義文(GRANT文),または権限取り消しの定義文(REVOKE文)で,カタログ名を使用できるかどうかを取得します。

115

supportsCatalogsInProcedureCalls()

プロシジャ呼び出し文でカタログ名を使用できるかどうかを取得します。

116

supportsCatalogsInTableDefinitions()

表定義文でカタログ名を使用できるかどうかを取得します。

117

supportsColumnAliasing()

列の別名がサポートされているかどうかを取得します。

118

supportsConvert()

SQLの型間のCONVERT関数がサポートされているかどうかを取得します。

119

supportsConvert(int fromType, int toType)

指定されたSQLの型間のCONVERT関数がサポートされているかどうかを取得します。

120

supportsCoreSQLGrammar()

ODBC Core SQL文法がサポートされているかどうかを取得します。

121

supportsCorrelatedSubqueries()

外への参照列を含む副問合せがサポートされているかどうかを取得します。

122

supportsDataDefinitionAndDataManipulationTransactions()

トランザクションで,データ定義文とデータ操作文の両方がサポートされているかどうかを取得します。

123

supportsDataManipulationTransactionsOnly()

トランザクションでデータ操作文だけがサポートされているかどうかを取得します。

124

supportsDifferentTableCorrelationNames()

表相関名がサポートされている場合,表名と異なる名前であるという制限を付けるかどうかを取得します。

125

supportsExpressionsInOrderBy()

ORDER BYリスト中で値式がサポートされているかどうかを取得します。

126

supportsExtendedSQLGrammar()

ODBC Extended SQL文法がサポートされているかどうかを取得します。

127

supportsFullOuterJoins()

完全な入れ子の外結合がサポートされているかどうかを取得します。

128

supportsGetGeneratedKeys()

文が実行されたあとに自動生成キーを取得できるかどうかを取得します。

129

supportsGroupBy()

GROUP BY句がサポートされているかどうかを取得します。

130

supportsGroupByBeyondSelect()

SELECT文中のすべての列がGROUP BY句に含まれるという条件で,このデータベースによって,GROUP BY句でSELECT文中にない列の使用がサポートされているかどうかを取得します。

131

supportsGroupByUnrelated()

GROUP BY句でSELECT文中にない列の使用がサポートされているかどうかを取得します。

132

supportsIntegrityEnhancementFacility()

SQL Integrity Enhancement Facilityがサポートされているかどうかを取得します。

133

supportsLikeEscapeClause()

LIKE述語のエスケープ句がサポートされているかどうかを取得します。

134

supportsLimitedOuterJoins()

外結合に関し,制限されたサポートが提供されるかどうかを取得します。

135

supportsMinimumSQLGrammar()

ODBC Minimum SQL文法がサポートされているかどうかを取得します。

136

supportsMixedCaseIdentifiers()

大文字と小文字が混在する二重引用符なしのSQL識別子を,大文字と小文字を区別して処理し,大文字と小文字混在で格納するかどうかを取得します。

137

supportsMixedCaseQuotedIdentifiers()

大文字と小文字が混在する二重引用符付きのSQL識別子を,大文字と小文字を区別して処理し,結果として大文字と小文字混在で格納するかどうかを取得します。

138

supportsMultipleOpenResults()

CallableStatementオブジェクトから同時に返された複数のResultSetオブジェクトを持つことが可能かどうかを取得します。

139

supportsMultipleResultSets()

executeメソッドの単一の呼び出しからの複数のResultSetオブジェクトの取得がサポートされているかどうかを取得します。

140

supportsMultipleTransactions()

一度に複数のトランザクションを(異なった接続で)オープンできるかどうかを取得します。

141

supportsNamedParameters()

CALL文への名前付きパラメタがサポートされているかどうかを取得します。

142

supportsNonNullableColumns()

列を非ナル値として定義できるかどうかを取得します。

143

supportsOpenCursorsAcrossCommit()

コミット間でカーソルがオープンされたままの状態がサポートされているかどうかを取得します。

144

supportsOpenCursorsAcrossRollback()

ロールバック間でカーソルがオープンされたままの状態がサポートされているかどうかを取得します。

145

supportsOpenStatementsAcrossCommit()

コミット間で文ハンドルがオープンされたままの状態がサポートされているかどうかを取得します。

146

supportsOpenStatementsAcrossRollback()

ロールバック間で文ハンドルがオープンされたままの状態がサポートされているかどうかを取得します。

147

supportsOrderByUnrelated()

ORDER BY句でSELECT文中にない列の使用がサポートされているかどうかを取得します。

148

supportsOuterJoins()

外結合が何らかの形式でサポートされているかどうかを取得します。

149

supportsPositionedDelete()

位置指定されたDELETE文がサポートされているかどうかを取得します。

150

supportsPositionedUpdate()

位置指定されたUPDATE文がサポートされているかどうかを取得します。

151

supportsRefCursors()

データベースがREF CURSORをサポートしているかどうかを取得します。

152

supportsResultSetConcurrency(int type, int concurrency)

指定した結果セットタイプと並行処理タイプの組み合わせをサポートしているかどうかを返します。

153

supportsResultSetHoldability(int holdability)

指定されたResultSetオブジェクトの保持機能がサポートされているかどうかを返します。

154

supportsResultSetType(int type)

指定した結果セットタイプがサポートされているかどうかを返します。

155

supportsSavepoints()

セーブポイントがサポートされているかどうかを取得します。

156

supportsSchemasInDataManipulation()

データ操作文でスキーマ名を使用できるかどうかを取得します。

157

supportsSchemasInIndexDefinitions()

インデクス定義文でスキーマ名を使用できるかどうかを取得します。

158

supportsSchemasInPrivilegeDefinitions()

権限付与の定義文(GRANT文),または権限取り消しの定義文(REVOKE文)で,スキーマ名を使用できるかどうかを取得します。

159

supportsSchemasInProcedureCalls()

プロシジャ呼び出し文でスキーマ名を使用できるかどうかを取得します。

160

supportsSchemasInTableDefinitions()

表定義文でスキーマ名を使用できるかどうかを取得します。

161

supportsSelectForUpdate()

SELECT FOR UPDATE文がサポートされているかどうかを取得します。

162

supportsStatementPooling()

文ハンドルのプールがサポートされているかどうかを取得します。

163

supportsStoredFunctionsUsingCallSyntax()

ストアドプロシジャエスケープ構文を使用したユーザ定義関数,またはベンダ関数の呼び出しをサポートするかどうかを取得します。

164

supportsStoredProcedures()

ストアドプロシジャエスケープ構文を使用するストアドプロシジャ呼び出しがサポートされているかどうかを判定します。

165

supportsSubqueriesInComparisons()

比較述語で副問合せがサポートされているかどうかを取得します。

166

supportsSubqueriesInExists()

EXISTS述語で副問合せがサポートされているかどうかを取得します。

167

supportsSubqueriesInIns()

IN述語で副問合せがサポートされているかどうかを取得します。

168

supportsSubqueriesInQuantifieds()

限定述語で副問合せがサポートされているかどうかを取得します。

169

supportsTableCorrelationNames()

表の相関名がサポートされているかどうかを取得します。

170

supportsTransactionIsolationLevel(int level)

指定したトランザクション隔離性水準がサポートされているかどうかを返します。

171

supportsTransactions()

トランザクションがサポートされているかどうかを取得します。

172

supportsUnion()

SQL UNIONがサポートされているかどうかを取得します。

173

supportsUnionAll()

SQL UNION ALLがサポートされているかどうかを取得します。

174

updatesAreDetected(int type)

ResultSetクラスのrowUpdatedメソッドを呼び出すことによって可視の行が更新されたことを検出できるかどうかを取得します。

175

usesLocalFilePerTable()

各表にファイルを使用するかどうかを取得します。

176

usesLocalFiles()

ローカルファイルに表を格納するかどうかを取得します。

重要

この表に記載されていないメソッドは,HADBではサポートしていません。サポートしていないメソッドを実行すると,SQLExceptionが投入されることがあります。

(3) 必要なパッケージ名称とクラス名称

DatabaseMetaDataインタフェースを使用する場合に必要なパッケージ名称とクラス名称を次に示します。

(4) パターン文字列中に指定できる特殊文字

DatabaseMetaDataクラスのメソッドには,Stringのパターン文字列を指定する引数があります。パターン文字列中には,次の表に示す特殊文字を指定できます。

表8‒48 パターン文字列中に指定できる特殊文字

指定できる特殊文字

意味

_(下線)

任意の1文字です。

%

0文字以上の任意の長さの文字列です。

\

エスケープ文字です。パターン文字列中に指定したエスケープ文字の直後の特殊文字を通常の文字として扱います。

\は,Shift-JISの0x5c(UTF-16LEの0x5c00)で示される文字です。UTF-8の場合は,\(バックスラッシュ)で表示される文字を指定してください。