データベースアクセスクラス [詳解]
#include <database.h>
公開メンバ関数 | |
short | aclReload () |
short | assignSchemaData (const dbdef *src) |
bool | autoSchemaUseNullkey () const |
database * | clone () |
void | close (bool withDropDefaultSchema=false) |
short | continuous (char_td op=TD_BACKUP_START, bool inclideRepfile=false) |
void | convertTable (short tableIndex, bool turbo, const _TCHAR *ownerName=NULL) |
short | copyTableData (table *dest, table *src, bool turbo, short keyNum=-1, int maxSkip=-1) |
void | create (const _TCHAR *uri, short type=TYPE_SCHEMA_BDF) |
database * | createAssociate () |
bool | createTable (const char *utf8Sql) |
bool | createTable (short fileNum, const _TCHAR *uri=NULL) |
dbdef * | dbDef () const |
virtual int | defaultAutoIncSpace () const |
void | drop (const _TCHAR *uri=NULL) |
void | dropTable (const _TCHAR *tableName) |
bool | execSql (const char *utf8Sql) |
bool | existsTableFile (short tableIndex, const _TCHAR *ownerName=NULL) |
void | getBtrVersion (btrVersions *versions) |
char * | getSqlStringForCreateTable (const _TCHAR *tableName, char *retbuf, uint_td *size) |
bool | isOpened () const |
char_td | mode () const |
const copyDataFn | onCopyData () const |
const deleteRecordFn | onDeleteRecord () const |
bool | open (const _TCHAR *uri, short schemaType=0, short mode=-2, const _TCHAR *dir=NULL, const _TCHAR *ownerName=NULL) |
table * | openTable (short fileNum, short mode=TD_OPEN_NORMAL, bool autoCreate=true, const _TCHAR *ownerName=NULL, const _TCHAR *uri=NULL) |
table * | openTable (const _TCHAR *tableName, short mode=0, bool autoCreate=true, const _TCHAR *ownerName=NULL, const _TCHAR *uri=NULL) |
void * | optionalData () const |
virtual void | release () |
const _TCHAR * | rootDir () const |
void | setAutoSchemaUseNullkey (bool v) |
void | setOnCopyData (const copyDataFn v) |
void | setOnDeleteRecord (const deleteRecordFn v) |
void | setOptionalData (void *v) |
void | setRootDir (const _TCHAR *directory) |
void | setTableReadOnly (bool value) |
bool | tableReadOnly () const |
基底クラス nsdatabase に属する継承公開メンバ関数 | |
nsdatabase () | |
void | abortTrn () |
void | beginSnapshot (short bias=CONSISTENT_READ, binlogPos *bpos=NULL) |
void | beginTrn (short bias=SINGLELOCK_NOGAP+NOWAIT_WRITE) |
BTRCALLID_PTR | btrvFunc () |
uchar_td * | clientID () const |
bool | connect (const _TCHAR *uri, bool newConnection=false) |
void | createTable (fileSpec *pfs, uint_td len, const _TCHAR *uri, short_td mode=-1) |
bool | disconnect (const _TCHAR *uri=_T("")) |
bool | disconnectForReconnectTest () |
int | enableTrn () const |
void | endSnapshot () |
void | endTrn () |
void | getBtrVersion (btrVersions *versions, uchar_td *posblk) |
char * | getCreateViewSql (const _TCHAR *name, char *retbuf, uint_td *size) |
bool | isAssociate () const |
bool | isReconnected () const |
bool | isTransactdUri (const _TCHAR *uri) |
bool | isUseTransactd () const |
bool | localSharing () const |
short | lockWaitCount () const |
short | lockWaitTime () const |
short | openTableCount () const |
void | readDatabaseDirectory (_TCHAR *retbuf, uchar_td len) |
bool | reconnect () |
int | refCount () const |
void | rename (const _TCHAR *oldUri, const _TCHAR *newUri) |
void | setLocalSharing (bool v) |
void | setLockWaitCount (short v) |
void | setLockWaitTime (short v) |
void | setUseLongFilename (bool value) |
bool | setUseTransactd () |
short | stat () const |
_TCHAR * | statMsg (_TCHAR *retbuf) |
void | swapTablename (const _TCHAR *uri1, const _TCHAR *uri2) |
short_td | tdapErr (HWND hWnd, _TCHAR *retbuf=NULL) |
ushort_td | trxIsolationServer () const |
ushort_td | trxLockWaitTimeoutServer () const |
_TCHAR * | uri () const |
bool | uriMode () const |
bool | useLongFilename () |
静的公開メンバ関数 | |
static int | compatibleMode () |
static database * | create () |
static void | destroy (database *db) |
static void | setCompatibleMode (int mode) |
基底クラス nsdatabase に属する継承静的公開メンバ関数 | |
static bool | enableAutoReconnect () |
static unsigned int | execCodePage () |
static bool | registerHaNameResolver (HANAME_RESOLVER_PTR func) |
static void | setEnableAutoReconnect (bool v) |
static void | setExecCodePage (unsigned int codepage) |
static bool | trnsactionFlushWaitStatus () |
静的公開変数類 | |
static const int | CMP_MODE_BINFD_DEFAULT_STR = 2 |
static const int | CMP_MODE_MYSQL_NULL = 1 |
static const int | CMP_MODE_OLD_ALL = 2 |
static const int | CMP_MODE_OLD_BIN = 3 |
static const int | CMP_MODE_OLD_NULL = 0 |
基底クラス nsdatabase に属する継承静的公開変数類 | |
static const int | maxtables = 150 |
限定公開メンバ関数 | |
database () | |
virtual | ~database () |
virtual void | doClose () |
virtual void | doConvertTable (short tableIndex, bool turbo, const _TCHAR *ownerName) |
virtual void | doOpen (const _TCHAR *uri, short type, short mode, const _TCHAR *username) |
virtual bool | doReopenDatabaseSchema () |
virtual char * | getContinuousList (int option) |
virtual void | onCopyDataInternal (table *tb, int recordCount, int count, bool &cancel) |
virtual bool | onOpenAfter () |
virtual bool | onTableOpened (table *tb, short fileNum, short mode, bool isCreated) |
database & | operator= (const database &) |
void | setLockReadOnly (bool v) |
基底クラス nsdatabase に属する継承限定公開メンバ関数 | |
virtual | ~nsdatabase () |
void | addref () |
bool | checkAssociate () |
nsdatabase * | clone () const |
void | doReconnect (nstable *tb) |
bool | findTable (nstable *tb) |
void | internalRelease () |
nsdatabase & | operator= (const nsdatabase &) |
void | registerTable (nstable *tb) |
void | reset () |
void | resetSnapshot () |
void | setAssociate () |
virtual bool | setUri (const _TCHAR *uri) |
nstable ** | tables () |
short | tdap (ushort_td op, void *posb, void *data, uint_td *datalen, void *keybuf, keylen_td keylen, char_td keyNum) |
short | tdapEx (ushort_td op, void *posb, void *data, uint_td *datalen, void *keybuf, keylen_td keylen, char_td keyNum) |
void | unregisterTable (nstable *tb) |
その他の継承メンバ | |
基底クラス nsdatabase に属する継承静的限定公開メンバ関数 | |
static const char * | toServerUri (char *buf, int buflen, const _TCHAR *src, bool trd) |
基底クラス nsdatabase に属する継承限定公開変数類 | |
BTRCALLID_PTR | m_btrcallid |
short | m_stat |
データベースアクセスクラス
このクラスは nsdatabase を継承します。nsdatabase の機能に加えて具体的なテーブル情報を持って処理を行います。
このクラスのコピーは clone()メソッドを使用します。 生成は database::create()、破棄は database::destroy()を呼び出します。 特別な処理を加えたい場合は database::create()を行っているdatabaseFactry.cppを 変更してdatabaseのスーパークラスを生成します。動的に生成するオブジェクトを変更することには未対応です。
transactdではmysqlのテーブル情報とは別にスキーマ情報をテーブルに持ちます。 通常のこの内容は一致している必要があります。transactdにてスキーマ情報を生成しテーブルを作成すると 一致した内容が保証されます。 また、既存のmysqlのデータベースを初めてtransactdから使用するときは、スキーマ名に"transactd_schema"を指定すると自動で この名前のスキーマテーブルを生成します。
アソシエイトdatabaseを使うと同じサーバー内の異なるデータベースにまたがって、トランザクションやスナップショットを使用することができます。 アソシエイトdatabaseについては createAssociate() を参照してください。
|
protected |
コンストラクタは呼び出しできません。代わりに database::create()を使用して生成します。
|
protectedvirtual |
デストラクタは呼び出しできません。代わりに database::destroy()を使用して解放します。
short aclReload | ( | ) |
データベース名 mysql に記録されたユーザー情報とセキュリティー情報をサーバープラグイン内で再読取りします。
mysqlデータベースのuserテーブルなどをtransactdを使って変更した場合、この関数を呼び出すことでその情報が有効になります。
srcで指定したスキーマテーブルの情報をこのデータベースのスキーマテーブルにコピーして保存します。
データベースは事前にオープンされてなければなりません。
戻り値はスキーマテーブルへの読み取りまたは保存処理のtable::stat()の値です。成功すると0を返します。
bool autoSchemaUseNullkey | ( | ) | const |
open() でスキーマ名に"transactd_schema"を指定し自動でスキーマを生成する際に、キーフィールドが NULLを許可する場合、そのキーをNULLキーとして生成するかどうかを返します。
database * clone | ( | ) |
databaseのクローンを作成して返します。生成されたオプジェクトは必ず database::destroy()で解放してください。 クローンは deDef()で返される dbdefオブジェクトを共有します。クローンを別スレッドで使用するには dbdefに対するアクセスをシリアライズする必要があります。安全に複数スレッドで使用するには cloneでなく database::create()を使用してそれぞれでデータベースをオープンするようにしてください。
また、共有されたdbdefオブジェクトが内部的に使用するdatabaseオブジェクトは元のdatabaseオブジェクトです。 dbdefによるスキーマ変更などを行う際に、元のdatabaseオブジェクトが破棄されていると無効なポインター参照が発生します。
void close | ( | bool | withDropDefaultSchema = false | ) |
データベースをクローズします。 開いているテーブルがあればすべてクローズし、そのメモリを解放します。 未完了のトランザクションがあった場合はコミットされます。
ネットワーク接続は切断されます。
withDropDefaultSchema | 自動生成されたスキーマ"transactd_schema"を削除(ドロップ)するかどうかを指定します。 SQLのコマンドでテーブルの定義を変更した場合、transactd用のスキーマも変更する必要があります。 その場合、既存の"transactd_schema"をドロップし、再度 open() にて自動作成することでtransactd用のスキーマを最新の状態にすることができます。 |
実行結果は stat()で取得します。成功するとゼロが返ります。
|
static |
setCompatibleMode() で指定した値を返します。
short continuous | ( | char_td | op = TD_BACKUP_START , |
bool | option = false |
||
) |
PSQLのcontinuousオペレーションを実行します。サーバーがtransactdの場合は使用できません。 continuousオペレーションについてはPSQLのマニュアルを参照してください。
[in] | op | TD_BACKUP_STARTまたは TD_BACKUP_ENDを指定します。それぞれcontinuousオペレーションの開始または終了します。 |
[in] | option | 現在未使用です。常にfalseを指定してください。 |
void convertTable | ( | short | tableIndex, |
bool | turbo, | ||
const _TCHAR * | ownerName = NULL |
||
) |
テーブルのすべての行をtableIndexで指定された新しいスキーマに変換します。元のスキーマは dbdef::pushBackup() を使って事前に保存しておく必要があります。 実行結果は stat()で取得します。成功するとゼロが返ります。
[in] | tableIndex | コピー先のテーブル番号を指定します。 |
[in] | turbo | trueを指定するとコピーの際に、srcのレコードイメージをそのままdestにコピーし高速に処理します。 falseを指定すると、フィールドごとにsrcの内容を文字列化してからdestの同名フィールドに値をセットしてコピーします。 destとsrcのスキーマが異なる場合はこちらを選択してください。フィールド名が同じであれば型が異なっても正しくコピーできます。 |
[in] | ownerName | PSQLのデータベースの際に、テーブルのオーナーネームを指定します。 |
destで指定したテーブルにsrcで指定したテーブルのすべての行をコピーします。destは空のテーブルを指定します。
[in] | dest | コピー先のテーブルを指定します。 |
[in] | src | コピー元のテーブルを指定します。 |
[in] | turbo | trueを指定するとコピーの際に、srcのレコードイメージをそのままdestにコピーし高速に処理します。 falseを指定すると、フィールドごとにsrcの内容を文字列化してからdestの同名フィールドに値をセットしてコピーします。 destとsrcのスキーマが異なる場合はこちらを選択してください。フィールド名が同じであれば型が異なっても正しくコピーできます。 |
[in] | keyNum | srcでの読み取りに使用するキー番号を指定します。-1を指定すると物理順に読み取ります。 |
[in] | maxSkip | 読み取りエラーがあった場合にそのレコードをスキップして次に進むかどうかを指定します。スキップを許可する場合は-1を指定します。 それ以外の値を指定するとスキップしません。 |
void create | ( | const _TCHAR * | uri, |
short | type = TYPE_SCHEMA_BDF |
||
) |
スキーマテーブルを作成します。transactdの場合、サーバーにデータベースが作成されていなければデータベースも作成します。 transactdではmysqlやPSQLの1つデータベースに対して複数のスキーマテーブルを作成することができます。 必要なテーブルのみ列挙したスキーマテーブルを作成し、他のテーブルにアクセスできないようにするなどといった ことができます。
[in] | uri | 作成するスキーマテーブルのuriを指定します。uriの内容は open()を参照してください。 |
[in] | type | 作成するスキーマテーブルの種類を指定します。
|
実行結果は stat()で取得します。成功するとゼロが返ります。
|
static |
データベースオブジェクトを生成して返します。CインターフェースのDLL(so)のロードに失敗するとNULLが返ります。
database * createAssociate | ( | ) |
アソシエイトdatabaseを作成して返します。
アソシエイトdatabaseは、コネクションとトランザクションを親データベースと共有します。アソシエイトdatabaseを使うと同じサーバー内の異なるデータベースにまたがって、トランザクションやスナップショットを使用することができます。
接続、切断、トランザクションやスナップショットの制御はすべて親データベースにて行います。 アソシエイトdatabaseでは行えません。それらを行う関数を呼び出すとSTATUS_NOSUPPORT_OPを返します。
現在のデータベースがアソシエイトdatabaseかどうかを調べるには nsdatabase::isAssociate() を使用します。
bool createTable | ( | const char * | sql | ) |
SQL文でテーブルを作成します。 事前にデータベースがオープンされていなければなりません。
この方法で作成したテーブルはスキーマテーブルには追加されません。
[in] | sql | テーブルを作成するSQL文を指定します。SQL文はutf8でエンコードされた文字列を渡します。 |
bool createTable | ( | short | fileNum, |
const _TCHAR * | uri = NULL |
||
) |
指定したファイル番号のテーブルを作成します。
[in] | fileNum | テーブル番号を指定します。 |
[in] | uri | スキーマ情報と現在のディレクトリ情報を使用せずに、テーブルの位置(uri)を直接指定したい場合に使用します。 |
dbdef * dbDef | ( | ) | const |
このデータベースの定義を示す dbdefオブジェクトを取得します。 データベースがオープンされていない場合はNULLを返します。
|
inlinevirtual |
行の追加でフィールド値のオートインクリメントをサーバーによるものでなくクライアント側で実装する場合に使用します。 通常このメソッドは使用しません。
|
static |
データベースオブジェクトの使用しているメモリを解放します。 開いているテーブルがあればすべてクローズされメモリを解放します。 未完了のトランザクションがあった場合はコミットされます。
|
protectedvirtual |
convertTable()を実装します。詳しくは convertTabl()を参照してください。
|
protectedvirtual |
nsdatabaseを再実装しています。
void drop | ( | const _TCHAR * | uri = NULL | ) |
|
virtual |
tableNameで指定したテーブルをドロップします。他にテーブルを使用中のユーザーがいると失敗します。 実行結果は stat()で取得します。成功するとゼロが返ります。
nsdatabaseを再実装しています。
|
inline |
指定したSQL文を実行します。使用できるSQL文は、成功/不成功の結果を返すもののみです。結果セットを返すものは使用できません。 事前にデータベースがオープンされていなければなりません。
[in] | sql | SQL文を指定します。SQL文はutf8でエンコードされた文字列を渡します。 |
bool existsTableFile | ( | short | tableIndex, |
const _TCHAR * | ownerName = NULL |
||
) |
tableIndexで指定したテーブルが作成されているかどうかを返します。
[in] | tableIndex | 存在を確認するテーブル番号。 |
[in] | ownerName | PSQLのデータベースの際に、テーブルのオーナーネームを指定します。 |
void getBtrVersion | ( | btrVersions * | versions | ) |
現在開いているデータベーススキーマのあるサーバーとクラインアントモジュールのバージョンを取得します。
[out] | versions | btrVersions[3] 構造体の先頭アドレスを指定します。必ずsizeof(btrVersions) × 3以上のサイズを確保してください。 実行が成功すると先頭の構造体にクライアントモジュールのバージョンが、3番目の構造体にサーバーモジュールのバージョンが返されます。 PSQLでローカルエンジンがある場合は2番目の構造体にバージョンが返されます。 |
取得が成功したかどうかは stat()で取得します。成功するとゼロが返ります。
|
protectedvirtual |
continuous() の中でcontinuousするテーブルリストを取得します。 カンマ区切りでフルパスのファイル名リストを返します。
[in] | option | ゼロを指定します。現在のところこの値は使用されません。 |
char * getSqlStringForCreateTable | ( | const _TCHAR * | tableName, |
char * | retbuf, | ||
uint_td * | size | ||
) |
tableNameで指定したテーブルの定義から、テーブルを作成するSQL文を取得します。
database::createTable() でテーブルが正しく作成されなかった際に、このメソッドで得られたSQL文にて原因をMySQLコマンド ラインクライアントなどから解明することができます。
tableName | CREATE文を取得するテーブル名を指定します。 |
retbuf | SQL文を受け取るバッファの先頭アドレスを指定します。 |
size | retbufのサイズを示すuint_td型のアドレスを渡します。 |
|
virtual |
データベースがオープンされているかどうかを返します。
nsdatabaseを再実装しています。
char_td mode | ( | ) | const |
データベースをオープンしたときのmodeを返します。未オープンのときに呼び出して得られた値は特に意味を持ちません。
const copyDataFn onCopyData | ( | ) | const |
database::setOnCopyData()で登録されたコールバック関数を返します。
|
protectedvirtual |
copyTableData()と assignSchemaData()関数内部から呼び出されます。 それぞれの関数でテーブルの各行がコピーされるたびに呼び出されます。 コピー時に追加の処理を行いたい場合はオーバーライドします。
const deleteRecordFn onDeleteRecord | ( | ) | const |
setOnDeleteRecord()で指定したレコードを削除する際に呼び出される関数のアドレスを返します。
|
inlineprotectedvirtual |
データベースがオープンされた直後に呼び出されます。追加の処理を行いたい場合はオーバーライドします。
テーブルがオープンされた直後に呼び出されます。追加の処理を行いたい場合はオーバーライドします。
bool open | ( | const _TCHAR * | uri, |
short | schemaType = 0 , |
||
short | mode = -2 , |
||
const _TCHAR * | dir = NULL , |
||
const _TCHAR * | ownerName = NULL |
||
) |
データベースをオープンします。具体的にはスキーマテーブルをオープンします。 スキーマテーブルは、テーブルの一覧及び各テーブルの構成情報などメタ情報が保存されたテーブルです。 データベースをオープンすると、dbDef() にてデータベースのメタ情報にアクセスしたり、テーブルに対する操作などが行えるようになります。
[in] | uri | オープンするデータベースのuriを指定します。通常次のような形式です。 |
protocol://user/</i>/host/database?dbfile=schemaname.bdf&pwd=password
例 tdap://root@192.168.0.15/test?dbfile=test.bdf&pwd=xxxxx
斜体で示した部分以外は常に固定値(文字)です。
スラッシュ(/)、アット(@)、クエスチョン(?)、イコール(=)、スペース( )は区切り文字として予約されています。これらの文字は値に使用することはできまん。"user\@"および、"&pwd=password"は認証が無効の場合省略可能です。passwordはプレーンテキストで指定します。サーバーに送信される際は、クライアントライブラリー内で暗号化されて送信されます。
[in] | schemaType | スキーマの形式を指定します。transactdは TYPE_SCHEMA_BDF = 0を指定します。 PSQLの場合は TYPE_SCHEMA_DDF = 1も指定できます。 |
[in] | mode | オープンするモードを指定します。これはスキーマテーブルに対するものでそのほかのテーブルには影響しません。
|
[in] | dir | 使用しません。NULLを指定してください。 |
[in] | ownerName | PSQLのデータベースの際に、スキーマテーブルのオーナーネームを指定します。 オーナネームが設定されていない場合はNULLを指定します。 |
既存のmysqlのデータベースを初めてtransactdから使用するときは、スキーマ名に"transactd_schema"を指定すると自動でmysqlのテーブル情報を含んだスキーマテーブルをこの名前で生成します。 setAutoSchemaUseNullkey() も合わせて参照してください。
スキーマの変更を行う場合は通常TD_OPEN_EXCLUSIVEで開きます。排他モードで開くには、他に誰も開いていない状態でなければなりません。 排他モードで開くと閉じるまで他のユーザーはスキーマテーブルをオープンできなくなります。 Transactdにおいて、TD_OPEN_EXCLUSIVEはMySQLの LOCK TABLE ... WRITE ステートメントと同じものです。
また、TD_OPEN_READONLY_EXCLUSIVEはLOCK TABLE ... READ ステートメントと同じです。
table * openTable | ( | short | fileNum, |
short | mode = TD_OPEN_NORMAL , |
||
bool | autoCreate = true , |
||
const _TCHAR * | ownerName = NULL , |
||
const _TCHAR * | uri = NULL |
||
) |
テーブルをテーブル番号でオープンします。
[in] | fileNum | テーブル番号を指定します。 |
[in] | mode | オープンするモードを指定します。
|
[in] | autoCreate | trueまたはfalseを指定します。trueでテーブルが存在しない場合、スキーマに基づいてテーブルを作成します。 |
[in] | ownerName | PSQLのデータベースの際に、スキーマテーブルのオーナーネームを指定します。 |
[in] | uri | スキーマ情報と現在のディレクトリ情報を使用せずに、テーブルの位置(uri)を直接指定したい場合に使用します。 |
排他モードは他に誰も開いていない状態でなければ成功しません。 Transactdにおいて、TD_OPEN_EXCLUSIVEはMySQLの LOCK TABLE ... WRITE ステートメントと同じものです。 また、TD_OPEN_READONLY_EXCLUSIVEはLOCK TABLE ... READ ステートメントと同じです。
MySQLのバイナリログが有効で、トランザクション中にテーブルをオープンしようとすると、STATUS_ALREADY_INTRANSACTIONエラーが返ります。バイナリログが有効な場合、トランザクション中にテーブルをオープンすることはできません。トランザクションを開始する前にオープンしておく必要があります。
table * openTable | ( | const _TCHAR * | TableName, |
short | mode = 0 , |
||
bool | autoCreate = true , |
||
const _TCHAR * | ownerName = NULL , |
||
const _TCHAR * | uri = NULL |
||
) |
テーブルをテーブルの名前で指定してオープンします。 その他はテーブルを番号で指定する方法と同様です。オーバーロードされた openTable()を参照してください。
void * optionalData | ( | ) | const |
ユーザー定義のオプショナルデータを取得します。
|
virtual |
インスタンスへの参照数を-1します。参照数がゼロになると delete this を呼び出します。
nsdatabaseを再実装しています。
const _TCHAR * rootDir | ( | ) | const |
データベースの基準ディレクトリを返します。 データベースがオープンされていない場合は長さゼロの文字列を返します。 返される値は、通常のディレクトリ表現(\directory\subdirのような形式)になるのはPSQLエンジンのみです。 transactdではuriで表現されるため "tdap://server/database?dbfile="のようにテーブル名だけが除かれた文字列が返ります。
void setAutoSchemaUseNullkey | ( | bool | v | ) |
|
static |
Trnasactd 3より前のモードで処理を行うかどうかを指定します。
値は以下のいずれかもしくは組み合わせて使用できます。
mode |
|
デフォルトはCMP_MODE_MYSQL_NULL(1)です。
|
protected |
データベースを読み出し専用以外に変更できないようにロックするかどうかを指定します。これは現在のインスタンスに対するものでスキーマなどに影響するものではありません。
[in] | v | trueの場合ロックします。falseはロックを解除します。 |
void setOnCopyData | ( | const copyDataFn | v | ) |
database::assignSchemaData()と database::copyTableData()関数の進行状況を示すコールバック関数をセットします。
void setOnDeleteRecord | ( | const deleteRecordFn | v | ) |
レコードを削除する際に呼び出される関数のアドレスを指定します。
void setOptionalData | ( | void * | v | ) |
ユーザー定義のオプショナルデータを設定します。 この値は、コールバック関数の呼び出し元特定のためなどに使用できます。
void setRootDir | ( | const _TCHAR * | directory | ) |
void setTableReadOnly | ( | bool | value | ) |
テーブルをオープンする際に常にreadOnlyで開くかどうかを指定します。 ここでリードオンリーを指定すると openTable()のmodeパラメータに優先してリードオンリーで開かれます。
[in] | value | trueを指定するとそれ以降に開かれるテーブルはすべてリードオンリーで開かれます。 falseを指定するとopenTable()のmodeパラメータの値でテーブルが開かれます。 |
bool tableReadOnly | ( | ) | const |
テーブルをオープンする際に常にreadOnlyで開くかどうかを返します。
|
static |
|
static |
NULLのサポート並びにデフォルト値がサポートされた最新のモードです。
|
static |
|
static |
|
static |
Transactd 2.x互換のモードです。