全て クラス 名前空間 関数 変数 型定義 列挙型 列挙値 ページ
公開メンバ関数 | 全メンバ一覧
writableRecord クラス

書き込み可能な行のクラスです。 [詳解]

#include <memRecord.h>

+ writableRecord の継承関係図

公開メンバ関数

void clear ()
 
void del (bool KeysetAlrady=false, bool noSeek=false)
 
void insert ()
 
bool read (bool KeysetAlrady=false)
 
bool read (bookmark_td &bm)
 
void save ()
 
void update (bool KeysetAlrady=false, bool noSeek=false)
 
- 基底クラス memoryRecord に属する継承公開メンバ関数
memoryRecordoperator= (const memoryRecord &r)
 
- 基底クラス fieldsBase に属する継承公開メンバ関数
virtual ~fieldsBase ()
 
field fd (short index) const
 
field fd (const _TCHAR *name) const
 
const fielddefsfieldDefs () const
 
field getFieldNoCheck (short index) const
 
short indexByName (const _TCHAR *name) const
 
bool isInvalidRecord () const
 
field operator[] (short index) const
 
field operator[] (const _TCHAR *name) const
 
field operator[] (const std::_tstring &name) const
 
void setInvalidRecord (bool v)
 
size_t size () const
 

その他の継承メンバ

- 基底クラス memoryRecord に属する継承静的公開メンバ関数
static memoryRecordcreate (fielddefs &fdinfo)
 

詳解

書き込み可能な行のクラスです。

このクラスは直接生成せず、activeTable::getWritableRecord()にて取得します。
レコードを読み取りには read() を使用します。その際には事前にキー値をフィールドにセットするか、 read(bookmark_td &bm) メソッド に bookmark_td オブジェクトを渡します。事前にキー値をセットした読み取りは、 activeTable::index() で指定したインデックスにて検索されます。

関数詳解

void clear ( )
virtual

すべてのフィールドの値をクリアします。

memoryRecordを再実装しています。

void del ( bool  KeysetAlrady = false,
bool  noSeek = false 
)

フィールドにセットした値で read() を行い成功した場合、そのレコードを削除します。 activeTable::index() で指定したインデックスにて read() の検索が行われます。 通常このインデックスはユニークキーでなければなりません。
KeysetAlradyにtrueを指定すると、現在のフィールドの値でなく、この、writableRecordの親の activeTableにて、最後に処理したレコードの値を使って read() が行われます。
失敗すると例外がスローされます。

void insert ( )

フィールドにセットされた値で レコードをインサートします。
失敗すると例外がスローされます。
フィールドに値をセットする前に、 clear() を呼び出し予期せぬ値が書き込まれるのを防止することをお奨めします。

bool read ( bool  KeysetAlrady = false)

フィールドにセットした値で read() を行います。成功すると trueが返ります。
検索は activeTable::index() で指定したインデックスにて行われます。
詳細なエラーが欲しい場合は、 activeTable::table()->stat() にて取得できます。

bool read ( bookmark_td bm)

bmで指定したブックマーク値で read() を行います。成功すると trueが返ります。
詳細なエラーが欲しい場合は、 activeTable::table()->stat() にて取得できます。

void save ( )

フィールドにセットした値で read() を行い成功した場合、そのレコードを更新します。 レコードが見つからなかった場合は insert() を実行します。 activeTable::index() で指定したインデックスにて read() の検索が行われます。 通常このインデックスはユニークキーでなければなりません。
失敗すると例外がスローされます。

void update ( bool  KeysetAlrady = false,
bool  noSeek = false 
)

フィールドにセットした値で read() を行い成功した場合、そのレコードを更新します。 レコードが見つからなかった場合や更新に失敗した場合は例外がスローされます。 activeTable::index() で指定したインデックスにて read() の検索が行われます。 通常このインデックスはユニークキーでなければなりません。

Transactd SDK 2018年07月31日(火) 19時40分41秒 doxygen