データ ディクショナリ
メモ: ボーランド データベース エンジン(BDE)は推奨されなくなったので、今後は機能強化されません。たとえば、BDE では Unicode はサポートされません。BDE を使用して新規に開発を始めないでください。既存のデータベース アプリケーションを BDE から dbExpress に移行することを検討してください。
BDE を使ってデータにアクセスする場合は、アプリケーションからデータディクショナリにアクセスできます。データディクショナリは、データの内容と外観を記述する拡張フィールド属性セットを作成する場所として、アプリケーションから独立した、カスタマイズ可能な領域を提供します。
たとえば、頻繁に財務アプリケーションを開発する場合は、各種の通貨表示形式を記述する特殊な項目属性セットを数多く作成する可能性があります。設計時に開発アプリケーションのデータセットを作成する場合は、オブジェクトインスペクタを使って各データセットに通貨型項目を手作業で設定するのではなく、データディクショナリに設定されている拡張項目属性セットに通貨型項目を関連付けられます。データディクショナリを使用すると、作成するアプリケーション内およびアプリケーション間でデータの外観が一貫したものになります。
クライアント/サーバー環境では、データディクショナリをリモートサーバーに置いて情報共有に備えることができます。
設計時に項目エディタで拡張項目属性セットを作成する方法、およびアプリケーションのデータセットを通してそれらの属性セットを項目に関連付ける方法については、「項目コンポーネントの属性セットの作成」を参照してください。SQL エクスプローラおよびデータベースエクスプローラを使ったデータディクショナリと拡張項目属性の作成の詳細は、それぞれのオンラインヘルプを参照してください。
メモ: データディクショナリのプログラミングインターフェースは、drintf ユニット(lib ディレクトリ内)にあります。このインターフェースは、次のメソッドを提供します。
データディクショナリのインターフェース :
ルーチン | 機能 |
---|---|
DictionaryActive |
データディクショナリがアクティブかどうか示す |
DictionaryDeactivate |
データディクショナリを非アクティブにする |
IsNullID |
指定された ID がヌル ID かどうか示す |
FindDatabaseID |
エリアスで指定されたデータベースの ID を返す |
FindTableID |
指定されたデータベースのテーブル ID を返す |
FindFieldID |
指定されたテーブル内の項目の ID を返す |
FindAttrID |
名前で指定された属性セットの ID を返す |
GetAttrName |
ID で指定された属性セットの名前を返す |
GetAttrNames |
ディクショナリ内の各属性セットに対してコールバックを実行する |
GetAttrID |
指定した項目の属性セットの ID を返す |
NewAttr |
項目コンポーネントから新規の属性セットを作成する |
UpdateAttr |
項目のプロパティと一致するように属性セットを更新する |
CreateField |
保存されている属性に基づいて項目コンポーネントを作成する |
UpdateField |
指定された属性セットと一致するように項目のプロパティを変更する |
AssociateAttr |
指定された項目 ID に属性セットを関連付ける |
UnassociateAttr |
項目 ID への属性セットの関連付けを解除する |
GetControlClass |
指定された属性 ID のコントロールクラスを返す |
QualifyTableName |
ユーザー名によって完全に限定されたテーブル名を返す |
QualifyTableNameByName |
ユーザー名によって完全に限定されたテーブル名を返す |
HasConstraints |
ディクショナリ内にデータセットの制約があるかどうか示す |
UpdateConstraints |
データセットのインポートされた制約を更新する |
UpdateDataset |
データセットをディクショナリ内の現在の設定と制約に更新する |