TOP>>ツアー>>チュートリアル(DBアプリ編) 概略<ツアー>OBAQ構成定義アプリケーションサーバリファレンスサイトマップ

スキーマの作成


スキーマの作成

walrusでデータベースアプリケーションを作成する場合、 最初にデータベースのテーブルを設計しスキーマを作成します。 スキーマとは、walrus独自のフォーマットでテーブルの仕様を記述したものです。

# sample Walrus schema file (dbtut.wsc)

DataBase tutorialdb

 Table Shohin -- long_name=商品マスター
  IntField shohin_code     --  primary_key
  VarcharField shohin_name --     size=20
  IntField unit_price     

 Table Tanto -- long_name=担当者マスター
  IntField tanto_code      -- long_name=担当者コード
  VarcharField tanto_name  -- long_name=担当者名 size=20
  IntField ruikei_num      -- long_name=累計数量
  IntField ruikei_kin      -- long_name=累計金額

 Table Uriage
  DateTimeField dt
  IntField shohin_code
   .bind_to_field Shohin shohin_code
  IntField tanto_code
   .bind_to_field Tanto tanto_code
  IntField num

データベースの作成

次のようなOBAQスクリプトを実行します。

%require obaq/obaqmodel
%require obaq/sql
%import dbtut.wsc

DBConnection
 dbname=$LOGNAME
 auto_connect=false

SchemaCommandSet
  DropDB
  CreateDB
  CreateTables
  CreateDocument
    template=template.html
    output=dbspec.html

このスクリプトによって、以下の処理が実行されます。

  1. データベースの削除、再作成(DropDB, CreateDB)

    PostgreSQLのcreatedb,dropdbコマンドでデータベースを作成します。

  2. テーブル作成(CreateTables)

    createtableを実行し、テーブルを作成します。

  3. ドキュメント作成(CreateDocument)

    次のようなHTML形式のテーブル仕様書を作成します。

tutorialdb

Shohin

項目名称 項目名 備考
shohin_code shohin_code integer
shohin_name shohin_name varchar(20)
unit_price unit_price integer

担当者マスター

項目名称 項目名 備考
担当者コード tanto_code integer
担当者名 tanto_name varchar(20)
累計数量 ruikei_num integer 年度の初めからの累計数量です。
累計金額 ruikei_kin integer 年度の初めからの累計金額です。

Uriage

項目名称 項目名 備考
dt dt datetime
shohin_code shohin_code integer
tanto_code tanto_code integer
num num integer


ページトップへ