INIや設定: データベース設定/特性/SQL

データベース特性のSQLラベルについて。

ほとんどの場合、デフォルトで使うように思います。
しかし、時々データベース情報に記述することもあります。

SQLPervasive.SQLでは、ユニークインデックスの重複チェックをインデックス項目からカーソルが移動するときに行いますが、 OracleやMS_SQL_Serverでは、通常、レコード書込み時に行います。
つまり、1レコード分の入力が完了した後ということです。
どちらのタイミングでもデータを壊す心配はありませんが、使い勝手から考えると、Pervasive方式が便利なこともあります。

その場合、OracleやMS_SQL_Serverのデータベース特性で次のように設定します。
データベース情報:CHECK_KEY=Y

このキーワードは、大文字で記述します。
(小文字だと機能しないことがありました。)

また、Pervasive利用時にも、稀に使うことがあります。
そのケースについては、ページサイズの指定方法を参照してください。

それから、「テーブルの存在チェック」という機能も理解しておいた方が良さそうです。
テーブルリポジトリで、テーブル定義を設定した後、APG等でテーブルを使おうとすると、 物理テーブルが存在しなければ自動的にテーブルを作成してくれるという機能がMagicにはありますが、 その機能は、この設定が「True」のときに有効です。
V9Plusでは、デフォルトで「True」ですが、他のバージョンでは「False」の場合もあります。
注意してください。
新規テーブルが作成されないを参照してください。)