名前
capture-schema - データベースのスキーマ情報の取り込み
形式
capture-schema -username name -password password -dburl url -driver jdbcdriver -out aFilename [-schemaname aSchemaname] [-table aTablename]*
機能説明
データベースのスキーマ情報を取り込みます。
CMPのEntity Beanを使用した場合は、配備前に本コマンドによりテーブルのメタデータをデータベースから取り込んでファイルに格納します。
本コマンドを実行する場合には、コマンドを実行するコンソールの環境変数CLASSPATHに、使用するJDBCドライバのJARファイルを設定する必要があります。
Java DBのJDBCドライバのJARファイルを環境変数CLASSPATHに設定する必要はありません。
指定したデータベースが膨大な数のテーブルを持つなど、取り込むデータベースのスキーマ情報サイズが大きい場合に、-Xmxのチューニングが必要となる可能性があります。-XmxのチューニングについてはコマンドプロセスのJavaVMオプション設定を参照してください。
オプション
オプション名 | 説明 |
---|---|
-username | データベースへの認証アクセスで使用するユーザ名を指定します。大文字と小文字を区別します(注)。 |
-password | 選択しているデータベースへのアクセスに使用するパスワードを指定します。パスワードエイリアスは使用できません。大文字と小文字を区別します(注)。 |
-dburl | データベースへのアクセスでドライバが想定するJDBC URLを指定します。 |
-driver | CLASSPATHに指定しているJDBCドライバクラス名(java.sql.Driverの実装クラス)を指定します。 |
-out | 出力ファイルの名前を指定します。「.dbschema」で終わらない場合、この拡張子が追加されます。出力ファイルの名前は出力先のパスと併せてOSの文字列長制限を超えないように注意してください。 |
-schemaname | 取り込むユーザスキーマの名前を指定します。大文字と小文字を区別します(注)。 |
-table | 取り込むテーブルの名前を指定します。大文字と小文字を区別します(注)。 |
(注)オプションに設定する値の文字列の大文字/小文字の区別については接続するデータベースに設定されている文字列に合わせてください。
スキーマ名などを作成するSQL文実行時に識別子にダブルコーテーションを付与しない場合、大文字/小文字のどちらで扱われるかはデータベースによって異なります。詳細はデータベースのマニュアルを参照してください。
戻り値
0
コマンドプロセスのJavaVMオプション設定
capture-schemaコマンドを起動する場合、通常のJavaアプリケーションと同様に内部的にJavaアプリケーションの起動コマンド(Javaコマンド)を使用します。
このJavaアプリケーションの起動コマンドで指定可能なオプション(-Xmxオプションなど)を指定する場合には、環境変数VMARGSを指定してください。
VMARGS= -Xmx512m |
注意事項
環境変数VMARGSはasadminコマンドプロセスのJavaVMオプション設定でも利用されるので注意してください。
-classpathオプションは指定しないでください。
以下のように不当な値を指定した場合、javaコマンドのエラーが発生します。オプションの指定方法はjavaコマンドの説明を参照してください。空白を含む値を指定する場合、値をダブルコーテーション(")で囲む必要があります。
無効なオプションを指定した場合
>set VMARGS=-option |
不当な空白を指定した場合
>set VMARGS=option1 option2 |
使用例
以下にcapture-schemaコマンドの使用例を接続するデータベースごとに記載します。コマンドを実行したコンソール上にはデータベースの接続情報が表示されます。
Symfoware
> capture-schema -username user1 -password pwd1 -dburl jdbc:symford://dbhost:26551/resource -driver com.fujitsu.symfoware.jdbc.SYMDriver -schemaname SAMPLESCHEMA -table COMPANY -table EMPLOYEE -out SAMPLESCHEMA_COMPANY-EMPLOYEE |
Oracle
>capture-schema -username user1 -password pwd1 -dburl jdbc:oracle:thin:@dbhost:1521:mysid -driver oracle.jdbc.OracleDriver -schemaname SAMPLESCHEMA -table COMPANY -table EMPLOYEE -out SAMPLESCHEMA_COMPANY-EMPLOYEE |
SQL Server
> capture-schema -username user1 -password pwd1 -dburll jdbc:sqlserver://dbhost:1433;databaseName=master -driver com.microsoft.sqlserver.jdbc.SQLServerDriver -schemaname SAMPLESCHEMA -table COMPANY -table EMPLOYEE -out SAMPLESCHEMA_COMPANY-EMPLOYEE |
PowerGres Plus
> capture-schema -username user1 -password pwd1 -dburl jdbc:postgresql://dbhost:5432/template1 -driver org.postgresql.Driver -schemaname SAMPLESCHEMA -table COMPANY -table EMPLOYEE -out SAMPLESCHEMA_COMPANY-EMPLOYEE |
Java DB
> capture-schema -username user1 -password pwd1 -dburl jdbc:derby://dbhost:1527/samples -driver org.apache.derby.jdbc.ClientDriver -schemaname SAMPLESCHEMA -table COMPANY -table EMPLOYEE -out SAMPLESCHEMA_COMPANY-EMPLOYEE |