XML スキーマを元にデータベース構造を作成

www.altova.com このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  ユーザーマニュアル > メニューコマンド > 変換メニュー >

XML スキーマを元にデータベース構造を作成

ic_conv_db_structure_from_schema

XMLSpy では、既存のスキーマファイルを元に、空のデータベース(またはスケルトンデータベース)を作成することができます。以下に記される方法は、各種データベースに対して使用することができます。

 

1. スキーマファイルをスキーマ/WSDL ビューにて開きます。
2.メニューコマンドから「変換 | XML スキーマを元にデータベース構造を作成」を選択します。 データソースへの接続 ダイアログが表示され、データベース (DB) への接続を行います。
3.リレーショナルデータベースへの接続を行うには、データソースへの接続 のセクションに記述された方法を使用します。例えば、Microsoft Access データベースへ接続するには、Microsoft Access ラジオボタンを選択し、データベースを選択する操作を続けます。スキーマ構造の作成には、既存のデータ
4.XML スキーマから DB 構造を作成ダイアログにて、スキーマから作成されたテーブルがツリー構造で表示されます。例えば以下のスクリーンショットでは、Address テーブルが作成され、エクスポートされる対象として選択されています。エクスポートしないテーブルは、隣にあるチェックボックスやコンテキストメニューからチェックを外してください。

URefConvert_XSD2DBDlg

 

リレーションシップと共に DB テーブルを作成する

DB 構造の元となる XML スキーマにて同一性制約によるリレーションシップが定義されている場合、これらのリレーションシップが自動的に作成され、テーブル構造にて表示されます。外部キーを含むテーブルならびに外部キーで使用されるテーブル以下に、リレーションシップを含むテーブルが表示されます。

 

リレーションシップタブでは、テーブルリレーションシップを作成ならびに修正することができます。このタブでは、主キー/外部キーが取りうる全てのリレーションシップが表示されます(以下のスクリーンショットを参照)。

URefConvert_XSD2DBDlgRels

以下の操作により、リレーションシップを作成することができます:

 

1.表示されている中から、1つの主キー/外部キーリレーションシップを選択してください。
2.ダイアログ下部にあるペインにてプラスボタンをクリックして、リレーションシップを作成します。
3.2つのテーブルにあるドロップダウンリストから、目的のカラムを選択します。

 

リレーションシップを選択して、マイナスボタンをクリックすることで、リレーションシップを削除することができます。

 

データベース構造ならびに接続に関するメモ

同一性制約により定義されたスキーマ構造は、生成されるデータベースにも反映されます。XML スキーマから DB 構造を作成ダイアログにより作成されるデータベースの種類と制約、そして接続方法を以下のテーブルに記します。

 

 


直接

ODBC を使用

ADO を使用

MS Access (2000 と 2003)

OK *

OK

OK

MS SQL Server

OK *

OK

OK

Oracle

OK *

OK

OK

MySQL

-

OK *

OK W

Sybase

-

OK *

OK

IBM DB2

-

OK *

OK

 

*        推奨される接続方法

W        MySQL: ODBC をベースにした ADO 接続を作成する場合、User またはシステム DSN の使用が推奨されます

-        未サポート

 

XMLSpy では、 階層構造ならびにフラット構造のスキーマ のマッピングが行われます。両者のフォーマットは、XMLSpy により自動的に認識されます。

フラット構造から SQL へのマッピングは2つの点で異なります:

 

SQL Server DB、Oracle DB、または Sybase DB:

上にあるデータベースに対してフラット構造で生成されたスキーマは、スキーマカタログ名が抽出され、生成された SQL スクリプトにて DB 名として使用されます。つまり、生成される SQL スクリプトを実行するには、ターゲット DB の名前をスキーマカタログ名と同じものにする必要があります。

Access(2000 ならびに 2003)、MySQL、または DB2 DB:

上にあるデータベースに対してフラット構造で生成されたスキーマは、SQL スクリプトが生成される時に、スキーマカタログ名を無視します。つまり、生成される SQL はログインしたターゲットデータベースに対して実行されます。

 

データ型の変換

データベースのデータ型から XML スキーマのデータ型への変換に関する情報については、 付録を参照ください。

 


(C) 2019 Altova GmbH