4.1.2.1. テーブル作成¶
4.1.2.1.1. テーブル定義¶
本チュートリアルでは次の様な定義のマスタテーブルを使用します。
チュートリアルマスタ「k99m_tutorial」
No. 論理名 物理名 型 長さ 必須 PK 1 会社コード company_cd 文字列 100 Y ○ 2 チュートリアルコード tutorial_cd 文字列 100 Y ○ 5 チュートリアル名称 tutorial_name 文字列 1000 Y 4 ロケールID locale_id 文字列 50 Y ○ 3 期間コード term_cd 文字列 50 Y ○ 6 開始日 start_date タイムスタンプ Y 7 終了日 end_date タイムスタンプ Y 8 削除フラグ delete_flag 文字列 1 Y 9 予備項目A extension_a 文字列 1000 10 予備項目B extension_b 文字列 1000 11 予備項目C extension_c 文字列 1000 12 予備項目D extension_d 文字列 1000 13 予備項目E extension_e 文字列 1000 14 予備項目F extension_f 文字列 1000 15 予備項目G extension_g 文字列 1000 16 予備項目H extension_h 文字列 1000 17 予備項目I extension_i 文字列 1000 18 予備項目J extension_j 文字列 1000 19 登録日時 entry_ts タイムスタンプ Y 20 登録者コード entry_user_cd 文字列 100 Y 21 更新カウンタ renew_cnt 数値 18,0 Y 22 更新日時 renew_ts タイムスタンプ Y 23 更新者コード renew_user_cd 文字列 100 Y コラム
予備項目A~Jintra-mart Accel Kaiden!の各テーブルでは、カスタマイズを考慮し予備項目をあらかじめ定義しています。実際のプログラミング時には予備項目の設定は不要です。注意
登録日時、登録者コード、更新カウンタ、更新日時、更新者コードintra-mart Accel Kaiden!の各テーブルで共通的に定義している項目です。本カラムは必ず定義してください。
4.1.2.1.2. DDL¶
利用するデータベースに合わせて、次のいずれかのDDLを実行します。本チュートリアルでは、Oracle Databaseの使用を推奨します。
4.1.2.1.2.1. Oracle Database¶
create table k99m_tutorial ( company_cd varchar2(100) not null, tutorial_cd varchar2(100) not null, tutorial_name varchar2(1000) not null, locale_id varchar2(50) not null, term_cd varchar2(50) not null, start_date timestamp not null, end_date timestamp not null, delete_flag varchar2(1) not null, extension_a varchar2(1000), extension_b varchar2(1000), extension_c varchar2(1000), extension_d varchar2(1000), extension_e varchar2(1000), extension_f varchar2(1000), extension_g varchar2(1000), extension_h varchar2(1000), extension_i varchar2(1000), extension_j varchar2(1000), entry_ts timestamp not null, entry_user_cd varchar2(100) not null, renew_cnt numeric(18,0) not null, renew_ts timestamp not null, renew_user_cd varchar2(100) not null ); alter table k99m_tutorial add primary key (company_cd, tutorial_cd, locale_id, term_cd);
4.1.2.1.2.2. PostgreSQL¶
create table k99m_tutorial ( company_cd varchar(100) not null, tutorial_cd varchar(100) not null, tutorial_name varchar(1000) not null, locale_id varchar(50) not null, term_cd varchar(50) not null, start_date timestamp without time zone not null, end_date timestamp without time zone not null, delete_flag varchar(1) not null, extension_a varchar(1000), extension_b varchar(1000), extension_c varchar(1000), extension_d varchar(1000), extension_e varchar(1000), extension_f varchar(1000), extension_g varchar(1000), extension_h varchar(1000), extension_i varchar(1000), extension_j varchar(1000), entry_ts timestamp without time zone not null, entry_user_cd varchar(100) not null, renew_cnt numeric(18,0) not null, renew_ts timestamp without time zone not null, renew_user_cd varchar(100) not null ); alter table k99m_tutorial add primary key (company_cd, tutorial_cd, locale_id, term_cd);
4.1.2.1.2.3. Microsoft SQL Server¶
create table k99m_tutorial ( company_cd nvarchar(100) not null, tutorial_cd nvarchar(100) not null, tutorial_name nvarchar(1000) not null, locale_id nvarchar(50) not null, term_cd nvarchar(50) not null, start_date datetime2 not null, end_date datetime2 not null, delete_flag nvarchar(1) not null, extension_a nvarchar(1000), extension_b nvarchar(1000), extension_c nvarchar(1000), extension_d nvarchar(1000), extension_e nvarchar(1000), extension_f nvarchar(1000), extension_g nvarchar(1000), extension_h nvarchar(1000), extension_i nvarchar(1000), extension_j nvarchar(1000), entry_ts datetime2 not null, entry_user_cd nvarchar(100) not null, renew_cnt numeric(18,0) not null, renew_ts datetime2 not null, renew_user_cd nvarchar(100) not null ); alter table k99m_tutorial add constraint pk_k99m_tutorial primary key (company_cd, tutorial_cd, locale_id, term_cd);