Collection Contents 前へ 次へ PDF

ASA SQL リファレンス・マニュアル

SQL 文

CREATE EXISTING TABLE 文


説明 

この文は、リモート・サーバ上の既存のオブジェクトを表す新しいプロキシ・テーブルを作成します。

構文 

CREATE EXISTING TABLE [owner.]table-name
(column-definition, ...) ]
AT location-string

column-definition :
column-name data-type [NOT NULL]

location-string :
  remote-server-name.[db-name].[owner].object-name
remote-server-name;[db-name];[owner];object-name

パラメータ 

AT 句    AT 句は、リモート・オブジェクトのロケーションを指定します。AT 句は、デリミタとしてセミコロン (;) をサポートします。セミコロンが location-string 文字列のどこかにある場合、そのセミコロンはフィールド・デリミタです。セミコロンがない場合は、ピリオドがフィールド・デリミタです。セミコロンを使用すると、データベースと所有者の各フィールドにファイル名と拡張子を使用できます。たとえば、次の文は、テーブル a1 を MS Access ファイル mydbfile.mdb にマップします。

CREATE EXISTING TABLE a1
AT 'access;d:¥mydbfile.mdb;;a1'
使用法 

CREATE EXISTING TABLE 文は、外部のロケーションにあるテーブルに対応する、新しいローカルのプロキシ・テーブルを作成します。CREATE EXISTING TABLE 文は、CREATE TABLE 文の変形です。EXISTING キーワードを CREATE TABLE で使用すると、テーブルがすでにリモートに存在していて、そのメタデータが Adaptive Server Anywhere にインポートされるように指定できます。これにより、Adaptive Server Anywhere ユーザにとって可視のエンティティであるように、リモート・テーブルが設定されます。Adaptive Server Anywhere は、テーブルを作成する前に、外部ロケーションにテーブルが存在するかどうかを確認します。

オブジェクト (ホスト・データ・ファイルまたはリモート・サーバ・オブジェクトのどちらか) が存在しない場合、この文は拒否されてエラー・メッセージが出力されます。

ホスト・データ・ファイルまたはリモート・サーバ・テーブルのインデックス情報が抽出され、システム・テーブル sysindexes のローを作成するために使用されます。これにより、サーバ関係のインデックスとキーが定義されて、クエリ・オプティマイザがこのテーブルに存在する可能性のあるすべてのインデックスを考慮できるようになります。

参照整合性制約は、必要に応じてリモート・ロケーションに渡されます。

カラム定義が指定されていない場合、Adaptive Server Anywhere は、リモート・テーブルから取得するメタデータからカラム・リストを引き出します。カラム定義が指定されている場合、Adaptive Server Anywhere は、そのカラム定義を検証します。カラム名、データ型、長さ、IDENTITY プロパティ、NULL プロパティについて、次の点がチェックされます。

パーミッション 

RESOURCE 権限が必要です。別のユーザのテーブルを作成するには、DBA 権限が必要です。

Windows CE ではサポートされません。

関連する動作 

オートコミット

参照 
標準と互換性 
 

リモート・サーバ server_a にある blurbs テーブルのプロキシ・テーブル blurbs を作成します。

CREATE EXISTING TABLE blurbs
( author_id id not null,
copy text not null)
AT 'server_a.db1.joe.blurbs'

リモート・サーバ server_a にある blurbs テーブルに対して blurbs という名前のプロキシ・テーブルを作成します。Adaptive Server Anywhere は、リモート・テーブルから取得したメタデータからカラム・リストを引き出します。

CREATE EXISTING TABLE blurbs
AT 'server_a.db1.joe.blurbs'

Adaptive Server Anywhere のリモート・サーバ asademo にある employee テーブルのプロキシ・テーブル rda_employee を作成します。

CREATE EXISTING TABLE rda_employee
AT 'asademo..DBA.employee'

Collection Contents 前へ 次へ PDF