リモート・サーバー・データを使用した表の作成

リモート・サーバーの 1 つ以上の表を参照する表をローカル・サーバーに作成できます。

選択ステートメントとともに、コピー・オプションを指定して、デフォルト値などの属性を取得したり、新規表用にコピーされる列情報を識別したりすることができます。WITH DATA または WITH NO DATA 文節を指定して、リモート・システムから表にデータを入力するかどうかを指示する必要があります。

例えば、リモート・サーバー REMOTESYS 上の EMPLOYEE 表からの列定義が含まれた EMPLOYEE4 という名前の表を作成します。リモート・システムからのデータも含めます。

CREATE TABLE EMPLOYEE4 AS
   (SELECT PROJNO, PROJNAME, DEPTNO
    FROM REMOTESYS.TESTSCHEMA.EMPLOYEE
    WHERE DEPTNO = 'D11') WITH DATA

この表をグローバル一時表として作成することもできます (QTEMP で作成します)。この例では、新規表に複数の異なる列名を指定しています。表定義は、リモート・サーバーから列のデフォルト値を取得します。

DECLARE GLOBAL TEMPORARY TABLE EMPLOYEE4 (Project_number, Project_name, Department_number) AS
   (SELECT PROJNO, PROJNAME, DEPTNO
    FROM REMOTESYS.TESTSCHEMA.EMPLOYEE
    WHERE DEPTNO = 'D11') WITH DATA INCLUDING DEFAULTS
新規表のソースとしてリモート・サーバーを使用する場合には、以下の制限が適用されます。
  • マテリアライズ照会表の文節は許可されません。
  • FIELDPROC が含まれた列は選択リストにリストできません。
  • リモート・サーバーが DB2® for LUW または DB2 for z/OS® の場合、コピー・オプションを指定できません。