LoginSignup
0
0

More than 5 years have passed since last update.

.NETとCache'のODBとしての連携(概要)

Posted at

SQLではポリモーフィングが非常にしづらいので、SQLを書かずにデータベースを扱う方法。

VisualStudio(VS), Cache'がインストールされていることが前提。

手順をまとめると
1:Cache'と.NETを結びつけるために、.NET上で動くクラス(プロキシクラスと呼ばれている)をCache'から出力する。
http://docs.intersystems.com/cache20171j/csp/docbook/DocBook.UI.Page.cls?KEY=GBMP_proxy#GBMP_proxy_generating

2:VSで項目に追加する。
3:クラスとして宣言し、Newしてインスタンスを生成し、Saveで保存する。
4:保存されたデータは既にデータベースになっている。

☆ここからが本題
ODBが普通のプログラムと違うところは
A:VS上でNewすると、%Persistentから継承したプロキシクラスでは、ディスク上にインスタンスが生成される(つまり、データテーブルに、新しい行が追加されるのと等価)→一度生成したインスタンスは明示的にDeleteするまで消えない。ディスク空間をあたかもメモリ空間のように使える。

B:生成したインスタンスには一意のIDが割り振られる。

C:過去に保存したデータを呼び出すときは、OpenID()という関数でIDを指定して呼び出すか、あるいはテーブルを丸ごと読み出して、その中から検索するかのいずれかである(次回以降に詳述)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0