⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mgrbaseclient.h

📁 1)安装sp2补丁. 2)安装中文语言包. 3)关闭除系统盘除外的系统还原 4)控制面板->区域和语言选项->区域选项 选择中国,位置:选择中国.高级选项卡 非unicode程序的语
💻 H
📖 第 1 页 / 共 2 页
字号:

#ifndef __mgrbaseclient_h
#define __mgrbaseclient_h


#define MGRBASE_PORT    9068 
#define MAXKEYBUFSIZE   2048

#define MGRBASE_MAXROW  -1

#ifndef SYSOBJPROP_UNIQUE
#define SYSOBJPROP_UNIQUE 0x1      /*unique index */
#endif


class MGRBaseClient :public BaseNetClient
{
public:

	enum EXPANDSTYLE{
		 EXP_DEFAULT=0,   //只扩展一级
		 EXP_ALL=1,       //全扩展
		 EXP_TOLEAF=2     //扩展到叶子
	};
public:
	MGRBaseClient(NetManager *nfm);
	~MGRBaseClient();

void  SetServer(LPCSTR server,int port=MGRBASE_PORT);

BOOL  DatabaseCreate(LPCSTR dbname,LPCSTR catdir,LPCSTR devfile,superint_ut devsize);
BOOL  DatabaseCreateEx(LPCSTR dbname,LPCSTR catdir,LPCSTR devfile,superint_ut devsize,int pagesize);
BOOL  DatabaseOpen(LPCSTR dbname,LPCSTR configpath);
BOOL  DatabaseList(NetTable *dblist);
BOOL  DatabaseFind(LPCSTR dbname);
BOOL  DatabaseAppendDev(LPCSTR dbname,LPCSTR devpath,superint_ut size);
int   DatabaseCountDev(LPCSTR dbname);
BOOL  DatabaseGetDevInfo(LPCSTR dbname,NetTable *dev);
BOOL  DatabaseIsUnionDB(LPCSTR dbname);
BOOL  DatabaseDump(LPCSTR dbname,LPCSTR path);
BOOL  DatabaseRestore(LPCSTR dbname,LPCSTR path,BOOL bredolog);

superint_ut DatabaseGetFreeSpace(LPCSTR dbname);
superint_ut DatabaseGetTotalSpace(LPCSTR dbname);

BOOL  TableCreate(LPCSTR dbname,LPCSTR tblname,LPCSTR colsdef);
BOOL  UniTableCreate(LPCSTR dbname,LPCSTR tblname,LPCSTR colsdef);
BOOL  TableRename(LPCSTR dbname,LPCSTR oldtblname,LPCSTR newtblname);
BOOL  TableAppendCol(LPCSTR dbname,LPCSTR tblname,LPCSTR coldef);
BOOL  TableExpandCol(LPCSTR dbname,LPCSTR tblname,LPCSTR colname,int newlength);
BOOL  TableSetColName(LPCSTR dbname,LPCSTR tblname,LPCSTR oldcolname,LPCSTR newcolname);
BOOL  TableRemoveCol(LPCSTR dbname,LPCSTR tblname,LPCSTR colname);
BOOL  TableDrop(LPCSTR dbname,LPCSTR tblname);
BOOL  TableIsExist(LPCSTR dbname,LPCSTR tblname);
BOOL  TableList(LPCSTR dbname,NetTable *tbls);
int   TableCount(LPCSTR dbname);
BOOL  TableGetCols(LPCSTR dbname,LPCSTR tblname,NetTable *cols);
BOOL  TableSetLongBinaryColLength(LPCSTR dbname,LPCSTR tblname,LPCSTR colname,int length);
BOOL  TableInsert(LPCSTR dbname,LPCSTR tblname,NetTable &data);
BOOL  TableInsertEx(LPCSTR dbname,LPCSTR tblname,NetTable &data);
BOOL  TableDelete(LPCSTR dbname,LPCSTR tblname,NetTable &rowids);
BOOL  TableGet(LPCSTR dbname,LPCSTR tblname,NetTable &rowids,LPCSTR cols,NetTable *data);
BOOL  TableTake(LPCSTR dbname,LPCSTR tblname,superint_ut start,int num,NetTable *data);
BOOL  TableTakeByIndex(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname,superint_ut start,int num,NetTable *data);
BOOL  TableFindString(LPCSTR dbname,LPCSTR tblname,NetTable &rowids,LPCSTR colname,UString &str,NetTable *data);
BOOL  TableUpdate(LPCSTR dbname,LPCSTR tblname,NetTable &data);
BOOL  TableMutexUpdate(LPCSTR dbname,LPCSTR tblname,NetTable &olddata,NetTable &newdata);
superint_ut   TableCountRow(LPCSTR dbname,LPCSTR tblname);
superint_ut TableGetRowid(LPCSTR dbname,LPCSTR tblname,superint_ut i);
BOOL  TableGetRowidEx(LPCSTR dbname,LPCSTR tblname,superint_ut start,int num,NetTable *rowid);
BOOL  TableGetNextRowid(LPCSTR dbname,LPCSTR tblname,superint_ut rowid,int num,NetTable *rowids);
int   TableCountIndex(LPCSTR dbname,LPCSTR tblname);
superint_ut TableGetSpace(LPCSTR dbname,LPCSTR tblname);
BOOL  TableRowIsExist(LPCSTR dbname,LPCSTR tblname,superint_ut rowid);

int   FindTableId(LPCSTR dbname,LPCSTR tblname);

int   TableReadLongBinary(LPCSTR dbname,LPCSTR tblname,superint_ut rowid,LPCSTR colname,superint_ut start,BYTE *buf,int buflen);
int   TableWriteLongBinary(LPCSTR dbname,LPCSTR tblname,superint_ut rowid,LPCSTR colname,superint_ut start,BYTE *buf,int buflen);
superint_ut   TableGetLongBinaryLength(LPCSTR dbname,LPCSTR tblname,superint_ut rowid,LPCSTR colname);

BOOL  IndexCreate(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname,BOOL bunique,LPCSTR keydef);
BOOL  IndexCreateEx(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname,BOOL bunique,LPCSTR keydef,BOOL bForce);
BOOL  IndexRename(LPCSTR dbname,LPCSTR tblname,LPCSTR oldidxname,LPCSTR newidxname);
BOOL  IndexDrop(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname);
BOOL  IndexIsExist(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname);
BOOL  IndexList(LPCSTR dbname,LPCSTR tblname,NetTable *idxlist);
BOOL  IndexGetDef(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname,BOOL *bunique,MFTKEY *def);
BOOL  IndexGetLastKey(LPCSTR dbname,LPCSTR idxname,MFTKEY *key);
BOOL  IndexCheck(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname,BOOL bfix);

BOOL  IndexFetch(LPCSTR dbname,LPCSTR idxname,superint_ut start,int num,NetTable *rowid);
superint_ut   IndexCountRow(LPCSTR dbname,LPCSTR idxname);

BOOL  IndexQuery(LPCSTR dbname,LPCSTR idxname,MFTKEY &key,superint_ut start,int num,NetTable *rowids);
BOOL  IndexFilter(LPCSTR dbname,LPCSTR idxname,NetTable &param,NetTable *out);
superint_ut   IndexCountKey(LPCSTR dbname,LPCSTR idxname,MFTKEY &key);

BOOL  IndexQueryBetween(LPCSTR dbname,LPCSTR idxname,MFTKEY &begin,MFTKEY &end,superint_ut start,int num,NetTable *rowids);
superint_ut   IndexCountBetween(LPCSTR dbname,LPCSTR idxname,MFTKEY &begin,MFTKEY &end);

BOOL  IndexQueryUpper(LPCSTR dbname,LPCSTR idxname, MFTKEY &key,superint_ut start,int num,NetTable *rowids);
superint_ut   IndexCountUpper(LPCSTR dbname,LPCSTR idxname ,MFTKEY &key);

BOOL  IndexQueryBelow(LPCSTR dbname,LPCSTR idxname, MFTKEY &key,superint_ut start,int num,NetTable *rowids);
superint_ut   IndexCountBelow(LPCSTR dbname,LPCSTR idxname ,MFTKEY &key);

superint_ut IndexGetSpace(LPCSTR dbname,LPCSTR idxname);
BOOL  IndexSync(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname);
BOOL  IndexIsRequireSync(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname);

BOOL  IndexQueryData(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname,MFTKEY &key,superint_ut start,int num,LPCSTR cols,NetTable *data);
BOOL  IndexQueryDataDirect(LPCSTR dbname,LPCSTR idxname,MFTKEY &key,superint_ut start,int num,LPCSTR cols,NetTable *data);
BOOL  IndexQueryDataEx(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname,NetTable &param,LPCSTR cols,NetTable *data);
BOOL  IndexDeleteData(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname,MFTKEY &key);

superint_ut   IndexCountDistinctKey(LPCSTR dbname,LPCSTR idxname,LPCSTR fields);
BOOL  IndexFetchDistinctKey(LPCSTR dbname,LPCSTR idxname,LPCSTR fields,superint_ut start,int num,NetTable *key);

void  FlushEnable(BOOL bEnable);





//sort support
BOOL  SortCreate(LPCSTR dbname,LPCSTR sortname,BOOL bunique,LPCSTR keydef,int datasize);
/*
keydef:
    <colname> <coltype> <asc/desc> [nocase/case],...
*/
BOOL  SortCreate(LPCSTR dbname,LPCSTR sortname,BOOL bunique,MFTKEY &key,int datasize);

BOOL  SortDrop(LPCSTR dbname,LPCSTR sortname);
BOOL  SortIsExist(LPCSTR dbname,LPCSTR sortname);
BOOL  SortList(LPCSTR dbname,NetTable *sortlist);
BOOL  SortGetDef(LPCSTR dbname,LPCSTR sortname,BOOL *bunique,MFTKEY *def,int *datasize);
BOOL  SortRename(LPCSTR dbname,LPCSTR oldsortname,LPCSTR newsortname);
BOOL  SortSetColName(LPCSTR dbname,LPCSTR sortname,LPCSTR oldcolname,LPCSTR newcolname);
BOOL  SortExpandCol(LPCSTR dbname,LPCSTR sortname,LPCSTR colname,int newlength);
BOOL  SortCheck(LPCSTR dbname,LPCSTR sortname,BOOL bfix);

int   SortInsert(LPCSTR dbname,LPCSTR sortname,NetTable &param);
BOOL  SortDelete(LPCSTR dbname,LPCSTR sortname,NetTable &param);

BOOL  SortFetch(LPCSTR dbname,LPCSTR sortname,superint_ut start,int num,NetTable *data);
BOOL  SortFetchNext(LPCSTR dbname,LPCSTR sortname,MFTKEY &key,int num,NetTable *data);
superint_ut   SortCountRow(LPCSTR dbname,LPCSTR sortname);

BOOL  SortQuery(LPCSTR dbname,LPCSTR sortname,MFTKEY &key,superint_ut start,int num,NetTable *data);
superint_ut   SortCountKey(LPCSTR dbname,LPCSTR sortname,MFTKEY &key);
BOOL  SortFilter(LPCSTR dbname,LPCSTR sortname,NetTable &param,NetTable *out,NetTable *exclude);
BOOL  SortQueryEx(LPCSTR dbname,LPCSTR sortname,NetTable &param,NetTable *data);


BOOL  SortQueryBetween(LPCSTR dbname,LPCSTR sortname,MFTKEY &begin,MFTKEY &end,superint_ut start,int num,NetTable *data);
superint_ut   SortCountBetween(LPCSTR dbname,LPCSTR sortname,MFTKEY &begin,MFTKEY &end);

BOOL  SortQueryUpper(LPCSTR dbname,LPCSTR sortname, MFTKEY &key,superint_ut start,int num,NetTable *data);
superint_ut   SortCountUpper(LPCSTR dbname,LPCSTR sortname ,MFTKEY &key);

BOOL  SortQueryBelow(LPCSTR dbname,LPCSTR sortname, MFTKEY &key,superint_ut start,int num,NetTable *data);
superint_ut   SortCountBelow(LPCSTR dbname,LPCSTR sortname ,MFTKEY &key);

BOOL  SortQueryUpperLine(LPCSTR dbname,LPCSTR sortname,MFTKEY &key,NetTable *out);
BOOL  SortQueryUpperLineEx(LPCSTR dbname,LPCSTR sortname,NetTable &param,NetTable *out);
BOOL  SortGetLast(LPCSTR dbname,LPCSTR sortname,NetTable *data);
BOOL  SortGetFirst(LPCSTR dbname,LPCSTR sortname,NetTable *data);

superint_ut SortGetSpace(LPCSTR dbname,LPCSTR sortname);


BOOL  TreeCreate(LPCSTR dbname,LPCSTR treename,LPCSTR colsdef,LPCSTR prefixcols);
BOOL  TreeGetDef(LPCSTR dbname,LPCSTR treename,NetTable *cols,CStringArray *prefixcols);
BOOL  TreeDrop(LPCSTR dbname,LPCSTR treename);
BOOL  TreeRename(LPCSTR dbname,LPCSTR oldname,LPCSTR newname);
BOOL  TreeList(LPCSTR dbname,NetTable *treelist);
BOOL  TreeIsExist(LPCSTR dbname,LPCSTR treename);
BOOL  TreeCreateIndex(LPCSTR dbname,LPCSTR treename,LPCSTR idxname,BOOL bunique,LPCSTR prefixcols,LPCSTR keydef);
superint_ut   TreeCountChild(LPCSTR dbname,LPCSTR treename,MFTKEY &prefix,superint_ut parentid);
superint_ut   TreeCountChildByIndex(LPCSTR dbname,LPCSTR idxname,MFTKEY &prefix,MFTKEY &key,superint_ut parentid);
BOOL  TreeGetChild(LPCSTR dbname,LPCSTR treename,MFTKEY &prefix,superint_ut parentid,superint_ut start,int num,NetTable *rowid);
BOOL  TreeGetChildByIndex(LPCSTR dbname,LPCSTR idxname,MFTKEY &prefix,MFTKEY &key,superint_ut parentid,superint_ut start,int num,NetTable *rowid);
int   TreeInsert(LPCSTR dbname,LPCSTR treename,superint_ut parentid,NetTable &data);
int   TreeDelete(LPCSTR dbname,LPCSTR treename,superint_ut parentid,NetTable &rowid);
int   TreeUpdate(LPCSTR dbname,LPCSTR treename,NetTable &data);
BOOL  TreeMove(LPCSTR dbname,LPCSTR treename,superint_ut id,superint_ut parentid);
BOOL  TreeGetParent(LPCSTR dbname,LPCSTR treename,superint_ut id,LPCSTR cols,NetTable *parent);
BOOL  TreeGet(LPCSTR dbname,LPCSTR treename,MFTKEY &prefix,superint_ut rootid,NetTable &expandid,enum EXPANDSTYLE expandstyle,int maxrow,LPCSTR cols,NetTable *data);
BOOL  TreeGetByIndex(LPCSTR dbname,LPCSTR treename,LPCSTR idxname,MFTKEY &prefix,MFTKEY &key,superint_ut rootid,NetTable &expandid,enum EXPANDSTYLE expandstyle,int maxrow,LPCSTR cols,NetTable *data);
BOOL  TreeQueryData(LPCSTR dbname,LPCSTR treename,LPCSTR idxname,MFTKEY &prefix,superint_ut parentid,MFTKEY &key,superint_ut start,int num,LPCSTR cols,NetTable *data);					

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -