0

既存の derby スキーマから create table ステートメントを抽出しようとしています。これを介して、すべての列とデータ型を取得できます。

select * from SYS.SYSTABLES a inner join sys.SYSCOLUMNS b on a.TABLEID= b.REFERENCEID

これにより、テーブル名、列名、データ型、デフォルト値、自動インクリメントなどが得られます。基本的なテーブル構築に非常に役立ちます。制約とインデックスが不足しています。

次の方法で、制約に関する情報を取得できます。

select a.*, b.TABLENAME from SYS.SYSCONSTRAINTS a inner join sys.SYSTABLES b on a.TABLEID = b.TABLEID

これにより、制約名、それが存在するテーブル、および型が得られます。活字の意味がわかりません。また、ここにインデックス情報があるかどうかもわかりません。

私が望むのは、ビューから得られるものと非常によく似たものです。

select * from sys.SYSVIEWS

そこから VIEWDEFINITION と呼ばれる列があり、各ビューの作成ステートメントが表示されます。これは、テーブルにとって非常に便利です。

ありがとう、

4

1 に答える 1

0

dblook の完全なソース コードは、Derby ソースの一部として入手できます。ここで dblook について読むことができます: http://db.apache.org/derby/docs/10.8/tools/ctoolsdblook.html

于 2012-07-16T19:55:37.313 に答える