データベースの詳細
最終更新日: 2024年5月21日
R8 | R9
「モデル項目詳細定義>詳細>データベースの詳細」を指定することができます。
標準では有効となっています。この場合、モデルに対応するテーブルにカラム(列)が作成されます。
計算によって導出される項目でデータベースに保存する必要がない、という場合に利用できます。
ご注意ください:データベースに保存しない項目は「検索項目として利用できない」「ソート項目として利用できない」という制約があります。また、一覧表示や集計ビューに適用すると(常に再計算されるため)パフォーマンス劣化の一因となります。
Wagby は次の条件に合致した項目は自動的に(テーブルに対する)インデックスを作成します。
概要
値をデータベースに保存する
この設定を無効にすると、テーブルにカラムが用意されません。
注意
インデックスを利用する
- データベースに保存されている。
- 検索項目として指定されている。
- 数字型または日付型である。
- 文字列型の場合、完全一致検索が指定されている。また、テキストエリアではない。
- モデル参照項目のキー格納部分である。ただしチェックボックスを除く。
- このモデルに対する検索行為が生じること。("画面 > 検索・一覧表示 > 画面を作成する" が有効になっている、または他のモデルから「モデル参照」が行われ、サブウインドウで検索を行うこと)
本設定を無効とすることで、インデックスの作成を抑制します。
テーブル定義の型
リポジトリに指定する「整数型」や「文字列型」は、各データベースが用意するそれぞれの型へ自動変換されます。
画面から入力した値をデータベースに格納できるような適切な長さを指定することが必要な場合もあります。
この型を詳細に指定することができます。図2では、文字列型の項目について、テーブル定義の型を varchar(1024) へ変更した例です。
ワンポイント
既存システムのテーブル定義を Wagby で再利用するような場合、テーブル定義側の型情報をこの欄へ転記してください。
文字列型の場合の特殊表記
文字列型項目の場合、図2の欄に数字を記述することで「文字列長」として解釈されます。
参照先項目のテーブル定義の型と同じ設定を適用する
モデル参照項目で、参照先モデルの主キーがテーブル定義の型を指定している場合、「参照先項目のテーブル定義の型と同じ設定を適用する」をチェックしてください。
本設定は、この項目がモデル参照の場合にのみ、チェックすることができます。チェックした場合、「テーブル定義の型」は入力不可となります。(本設定が優先されます。)
型を指定した場合のみ有効です
参照先モデルの項目が文字列型項目で数字のみ記載した場合、この設定は引き継がれません。"varchar(100)" など、利用するデータベースの型を明示的に記述した場合のみ有効となります。
参照型項目がテキストエリアの場合
この設定を行うことで、参照型項目と同じテキストエリア用の文字列型が適用されます。(文字列型の標準は255文字までですが、テキストエリアの場合、それより多くの文字を保存できるような型に変更されます。)
物理カラム名
通常はモデル項目の「項目ID」(英語で表記)がテーブルのカラム名として用いられます。「物理カラム名」を指定することで、この動作を変更することができます。
ワンポイント
既存システムのテーブル定義を Wagby で再利用するような場合、テーブル定義側のカラム名をこの欄へ転記してください。
複合キーモデル参照の場合
複合キーモデルを参照する他モデル参照項目でも物理カラム名を任意に指定することができます。
物理カラム名項目の入力欄に、コンマ区切りで(複数の)物理カラム名を記入します。[詳細...]
日本語カラム名を指定する
物理カラム名に日本語を利用することができます。[文字コードの設定について...]
一意制約
一意制約を設定すると、同じデータを重複して登録できないようになります。図4にあるように、制約名を指定します。
複数項目の組み合わせ
複数の項目を組み合わせた一意制約を設定することもできます。図5,図6は「氏名」と「氏名かな」項目の二つで一意制約としています。このように同じ制約名をそれぞれの項目に設定します。
複数の一意制約名を指定する8.3.3
一意制約に "a1,b1" というようにコンマ区切りで記述することができます。
仕様・制約
- 一意制約に関する仕様・制約をまとめています。
- カンマ区切りで複数の一意性制約名を指定したとき、個々の制約名の長さチェックではなく、全体での長さチェックとなっていました。R8.3.7/R8.4.2で修正されました。制約名の長さでエラーとなる場合、名前を短くするか、R8.3.7/R8.4.2以降のWagbyをご利用ください。
ロック名
Wagbyが内部で管理するロックキーのルールを変更することができます。通常、この設定を行うことはありません。