テーブル定義構造体 [詳解]
#include <tdapSchema.h>
公開メンバ関数 | |
| tabledef () | |
| void | cleanup () |
| void | convertToUtf8Schema () |
| short | fieldNumByName (const _TCHAR *name) const |
| const char * | fileName () const |
| const char * | fileNameA () const |
| uchar_td | inUse () const |
| bool | isLegacyTimeFormat (const fielddef &fd) const |
| bool | isMysqlNullMode () const |
| uchar_td | nullbytes () const |
| uchar_td | nullfields () const |
| bool | operator== (const tabledef &r) const |
| ushort_td | recordlen () const |
| void | setFileName (const char *s) |
| void | setFileNameA (const char *s) |
| void | setTableName (const char *s) |
| void | setTableNameA (const char *s) |
| void | setValidationTarget (bool isMariadb, uchar_td srvMinorVersion) |
| int | size () const |
| const char * | tableName () const |
| const char * | tableNameA () const |
| uint_td | unPack (char *ptr, size_t size) const |
公開変数類 | |
| union { | |
| ushort_td pageSize | |
| ushort_td varSize | |
| }; | |
| int | autoIncExSpace |
| uchar_td | charsetIndex |
| ushort_td | convertFileNum |
| ushort_td | ddfid |
| ushort_td | fieldCount |
| fielddef * | fieldDefs |
| ushort_td | fixedRecordLen |
| FLAGS | flags |
| uchar_td | iconIndex |
| uchar_td | iconIndex2 |
| uchar_td | iconIndex3 |
| ushort_td | id |
| uchar_td | keyCount |
| keydef * | keyDefs |
| FLAGS | optionFlags |
| uchar_td | parentKeyNum |
| ushort_td | preAlloc |
| uchar_td | primaryKeyNum |
| uchar_td | replicaKeyNum |
| uint_td | schemaCodePage |
| uchar_td | treeIndex |
| short | version |
テーブル定義構造体
|
inline |
コンストラクタ。すべてのフィールドを初期化します。
|
inline |
この構造体のメンバーを初期化します。
| void convertToUtf8Schema | ( | ) |
| short fieldNumByName | ( | const _TCHAR * | name | ) | const |
nameで指定した名前を持つフィールドのインデックスを返します。
| const char * fileName | ( | ) | const |
ファイル名を返します。
|
inline |
ファイル名を返します。
|
inline |
このスキーマ( this )を参照しているデータベースのインスタンス数を返します。
|
inline |
fdで指定したフィールドが、MySQL5.5形式の time datetime timestamp のいずれかかどうかを返します。
|
inline |
このスキーマを利用する table クラスが、NULLのサポート並びにデフォルト値がサポートされた最新のモードで処理されているかどうかを返します。
|
inline |
|
inline |
NULLを許可するフィールドの数を返します。
| void operator== | ( | const tabledef & | r | ) | const |
rで指定したtabledefと同じかどうかを返します。比較には、fielddefs keydefs は含まれません。 また、サーバーなどの条件によって動的に変化するメンバーも除外されます。
| r | 比較するtabledefのポインタを指定します。 |
|
inline |
このテーブルの最大レコードサイズを取得します。
|
inline |
ファイル名をセットします。ファイル名は最大265バイトです。 transactdの場合、ファイル名の拡張子は取り除かれてテーブルが作成されます。 SQLでアクセスする際のテーブル名はこの名前でアクセスします。
|
inline |
ファイル名をセットします。ファイル名は最大265バイトです。 transactdの場合、ファイル名の拡張子は取り除かれてテーブルが作成されます。 SQLでアクセスする際のテーブル名はこの名前でアクセスします。
|
inline |
テーブル名をセットします。テーブル名は最大31バイトです。 通常ファイル名から拡張子を取り除いた名前を指定します。
|
inline |
テーブル名をセットします。テーブル名は最大31バイトです。 通常ファイル名から拡張子を取り除いた名前を指定します。
|
inline |
この定義をバリデーションする際に、どのサーバーをターゲットにするかを指定します。
| isMariadb | Mariadbかどうかを指定します。 |
| srvMinorVersion | サーバーのマイナーバージョンを指定します。 |
| int size | ( | ) | const |
このスキーマ構造体の長さを返します。長さには、fieldDefとkeyDefで参照されるそれぞれの定義も含まれています。
| const char * tableName | ( | ) | const |
テーブル名を返します。
|
inline |
テーブル名を返します。
| uint_td unPack | ( | char * | ptr, |
| size_t | size | ||
| ) | const |
ptrで指定された圧縮されたレコードイメージを伸長して長さを返します。 ptrで指定されたメモリ領域は伸長後の長さを確保できる十分な長さが必要です。 確保された長さはsetBuflen()で指定します。
| [in,out] | ptr | packされたレコードイメージのアドレスを指定します。 |
| [in] | size | packされたレコードイメージのバイト数を指定します。 |
| union { ... } |
| int autoIncExSpace |
don't use. BizStation internal use only.
| uchar_td charsetIndex |
キャラクターセットをインデックス番号で指定します。 コードページからインデックスへの変換は mysql::charsetIndex(unsigned short codePage) で行えます。
| ushort_td convertFileNum |
don't use. BizStation internal use only.
| ushort_td ddfid |
DDFのフィールド番号を取得・設定します。 transactdでは使用しません。
| ushort_td fieldCount |
フィールド数を取得・設定します。
| fielddef * fieldDefs |
フィールド定義の先頭へのポインタを取得・設定します。
| ushort_td fixedRecordLen |
テーブルの固定長部分の長さを取得・設定します。
| FLAGS flags |
ファイルフラグを取得・設定します。 PSQLのテーブルを作成する場合詳しい情報はPSQLのマニュアルを参照してください。
transactdの場合は以下の値を使用できます。
| uchar_td iconIndex |
don't use. BizStation internal use only.
| uchar_td iconIndex2 |
don't use. BizStation internal use only.
| uchar_td iconIndex3 |
don't use. BizStation internal use only.
| ushort_td id |
テーブル番号を取得・設定します。
| uchar_td keyCount |
インデックス数を取得・設定します。
| keydef * keyDefs |
キー定義の先頭へのポインタを取得・設定します。
| FLAGS optionFlags |
don't use. BizStation internal use only.
| ushort_td pageSize |
ページサイズを取得・設定します。 transactdではこの値は無効です。
| uchar_td parentKeyNum |
don't use. BizStation internal use only.
| ushort_td preAlloc |
プリアロケートページ数を取得・設定します。 transactdではこの値は無効です。
| uchar_td primaryKeyNum |
プライマリキーのキー番号を取得・設定します。
| uchar_td replicaKeyNum |
don't use. BizStation internal use only.
| uint_td schemaCodePage |
このスキーマで使用される、コードページが何であるかを取得・設定します。
デフォルトはコンストラクタで65001(utf8) で設定されます。
この変数はあくまでも、スキーマ内の文字列の文字コードが何であるかを示すだけです。 この値を変更しても実際の文字列の文字コードが変換されることはありません。
| uchar_td treeIndex |
don't use. BizStation internal use only.
| ushort_td varSize |
このテーブル定義のこのフィールド以降の長さを示します。テーブル定義の全長は varSize + 4です。通常この値は内部で使用されます。 transactd以外ではこの値は無効です。
| short version |
テーブル定義のバージョンを取得・設定します。 この値はシステムにより使用されます。変更は行わないでください。