Hitachi

Hitachi Advanced Data Binder システム構築・運用ガイド


3.12.2 表を作成できない

実行するSQL文(CREATE TABLE文)が長文のため,adbsqlコマンドの入力を誤ってしまうような場合,次の方法で表を作成してみてください。

ファイルに記述したSQL文の実行方法を次に示します。

メモ

手順1.〜手順3.で作成するファイル(infile)は,テキストエディタを使用して作成することもできます。

  1. SQL文を記述するファイル(infile)を作成します。

    次に示すOSのコマンドを入力して,[Enter]キーを押してください。ファイルの作成先はホームディレクトリ下(/home/adbmanager),ファイル名は「infile」としてください。

    vi /home/adbmanager/infile
  2. 実行するSQL文を入力します。

    [I]キーを押してから,次に示すSQL文を入力します。

    1行目にADBUSER02を入力して,2行目に#HelloHADB_02を入力してください。3行目からCREATE TABLE文を入力してください。

    ADBUSER02
    #HelloHADB_02
    CREATE TABLE "SAMPLE" ("STATECODE" SMALLINT, "STATENAME" VARCHAR(15),
    "ZIPCODE" CHAR(15), "ADDRESS" VARCHAR(100), "AREA" DECIMAL(19))
    IN ADBUTBL01;
  3. SQL文を記述するファイル(infile)の作成を終了します。

    [Esc]キーを押してから,次に示すコマンドを入力して,[Enter]キーを押してください。

    :wq

    これで,SQL文を記述するファイル(infile)が作成されます。

  4. SQL文を記述するファイル(infile)を実行します。

    HADBサーバを開始した状態で,次に示すHADBのコマンドを実行してください。

    adbsql -V < infile

    上記のコマンドを実行すると,手順2.で入力したSQL文が一括で実行されます。実行結果の例を次に示します。

    ■実行結果の例

      USER-ID ?
    ADBUSER02
     
      PASSWORD ?
    #HelloHADB_02
     
    COMMAND ? +----2----+----3----+----4----+----5----+----6----+----7----+
    CREATE TABLE "SAMPLE" ("STATECODE" SMALLINT, "STATENAME" VARCHAR(15),
    NEXT ? +----2----+----3----+----4----+----5----+----6----+----7----+
    "ZIPCODE" CHAR(15), "ADDRESS" VARCHAR(100), "AREA" DECIMAL(19))
    NEXT ? +----2----+----3----+----4----+----5----+----6----+----7----+
    IN ADBUTBL01;
    KFAA96403-I SQL processing completed.

    これで,表が作成されます。