tdrecord.h
来自「This a simple database management system」· C头文件 代码 · 共 51 行
H
51 行
#pragma once
#include <string.h>
#include "TDDBStructs.h"
typedef unsigned char TDR_RECORD_HEADER;
#define TDRH_MASK_DELETED ((TDR_RECORD_HEADER)0x01) //least significant bit
#define TDR_OK 0
#define TDRERR_COLUMN_NOT_FOUND 1
#define TDRERR_INVALID_RECORD 7
class CTDRecord
{
//////////////////////////////////////////////////////////////////////
// Public Interface
//////////////////////////////////////////////////////////////////////
public:
friend class CTDDatabase;
friend class CTDQuery;
~CTDRecord( void );
int GetField( const char* szFieldName, void* vpBuffer, unsigned int iBufferSize );
int GetField( unsigned int iIndex, void* vpBuffer, unsigned int iBufferSize );
int SetField( const char* szFieldName, void* vpBuffer, unsigned int iBufferSize );
int SetField( unsigned int iIndex, void* vpBuffer, unsigned int iBufferSize );
int GetFieldSize( unsigned int iIndex, unsigned int* lpiSizeInBytes );
int GetFieldSize( const char* szFieldName, unsigned int* lpiSizeInBytes );
int GetHeader( TDR_RECORD_HEADER* rhOut );
int SetHeader( TDR_RECORD_HEADER* rhIn );
int IsValid( void );
void operator = ( CTDRecord recOther );
//////////////////////////////////////////////////////////////////////
// Private Interface
//////////////////////////////////////////////////////////////////////
private:
CTDRecord( TDDBTable* lptableDef, unsigned int iBytesNeeded );
unsigned int GetFieldByteOffset( unsigned int iIndex );
int GetIndexFromName( const char* szFieldName, unsigned int* lpiIndex );
TDDBTable* _lptableDef;
unsigned int _iBytes;
char* _lpBuffer;
};
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?