📄 mgrbaseclient.h
字号:
#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 ¶m,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 ¶m,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 ¶m);
BOOL SortDelete(LPCSTR dbname,LPCSTR sortname,NetTable ¶m);
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 ¶m,NetTable *out,NetTable *exclude);
BOOL SortQueryEx(LPCSTR dbname,LPCSTR sortname,NetTable ¶m,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 ¶m,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 + -