com.infoteria.asteria.sqlbuilder.model
Interface TableProvider

All Known Implementing Classes:
NullTableProvider, TableProviderByConnection

public interface TableProvider

DBMSから情報を取得するためのProviderインターフェース


Method Summary
abstract  String getSchemaName()
          デフォルトのスキーマ名
abstract  Table getTable(String name)
          指定のテーブルのTableクラス
abstract  String[] getTableNames()
          使用可能なテーブル名の配列
テーブル名は「スキーマ名.テーブル名」のように「.」で区切られる。
(DBによってはスキーマ名がないこともある)
abstract  boolean isOracle()
          TABLEの供給元がOracleである場合にtrue
(SQLの方言に対応するために必要)
abstract  boolean isTestSupported()
          selectTestがサポートされているかどうか
abstract  List selectTest(String sql, VariableList params, int max, boolean bHeader)
          select文のテスト実行。結果はString[]のListで返される。 selectTest の5番目の引数をnullにしたのと同じ動作になります。
abstract  List selectTest(String sql, VariableList params, int max, boolean bHeader, Map sqlTypeMap)
          select文のテスト実行。結果はString[]のListで返される。
abstract  com.infoteria.asteria.util.rdb.SchemasInfo supportsSchemasInformation()
          サポートしているスキーマ情報を返します
 

Method Detail

getSchemaName

public String getSchemaName()
デフォルトのスキーマ名

getTableNames

public String[] getTableNames()
使用可能なテーブル名の配列
テーブル名は「スキーマ名.テーブル名」のように「.」で区切られる。
(DBによってはスキーマ名がないこともある)

getTable

public Table getTable(String name)
指定のテーブルのTableクラス

isTestSupported

public boolean isTestSupported()
selectTestがサポートされているかどうか

selectTest

public List selectTest(String sql,
                       VariableList params,
                       int max,
                       boolean bHeader)
                throws SQLException
select文のテスト実行。結果はString[]のListで返される。 selectTest の5番目の引数をnullにしたのと同じ動作になります。
Parameters:
sql - SQL文。パラメータなどはRDBGetやSQLCallで使用しているそのままの形式で埋め込んでおく
params - SQLパラメータ。SQL文中のパラメータに対応
max - returnに含める最大行数
bHeader - 結果のListにヘッダ行を含めるかどうか。trueの場合はListの1行目はSELECT結果ではなく列名
Returns:
SELECT実行結果がString[]のListとして返される

selectTest

public List selectTest(String sql,
                       VariableList params,
                       int max,
                       boolean bHeader,
                       Map sqlTypeMap)
                throws SQLException
select文のテスト実行。結果はString[]のListで返される。
Parameters:
sql - SQL文。パラメータなどはRDBGetやSQLCallで使用しているそのままの形式で埋め込んでおく
params - SQLパラメータ。SQL文中のパラメータに対応
max - returnに含める最大行数
bHeader - 結果のListにヘッダ行を含めるかどうか。trueの場合はListの1行目はSELECT結果ではなく列名
sqlTypeMap - params のそれぞれのフィールド名(String)と java.sql.Types の型(Integer)のマップ 実行時に対応する型が見つからない場合は VARCHAR 扱いになります
Returns:
SELECT実行結果がString[]のListとして返される

isOracle

public boolean isOracle()
TABLEの供給元がOracleである場合にtrue
(SQLの方言に対応するために必要)

supportsSchemasInformation

public com.infoteria.asteria.util.rdb.SchemasInfo supportsSchemasInformation()
                                                                      throws SQLException
サポートしているスキーマ情報を返します
Returns:
サポートスキーマ情報