📄 mgrbaseclient.cpp
字号:
arg.AddItems(4);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
arg.SetItemNetTable(2,&olddata,FALSE);
arg.SetItemNetTable(3,&newdata,FALSE);
if(Call("mgrbaseif_TableMutexUpdate",NULL,&arg,&res))
{
return res.GetItemLong(0);
}
return FALSE;
}
superint_ut MGRBaseClient::TableCountRow(LPCSTR dbname,LPCSTR tblname)
{
NetDataTuple arg,res;
arg.AddItems(2);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
if(Call("mgrbaseif_TableCountRow",NULL,&arg,&res))
{
return res.GetItemSuperLong(0);
}
return FALSE;
}
superint_ut MGRBaseClient::TableGetRowid(LPCSTR dbname,LPCSTR tblname,superint_ut i)
{
NetDataTuple arg,res;
arg.AddItems(3);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
arg.SetItemSuperLong(2,i);
if(Call("mgrbaseif_TableGetRowid",NULL,&arg,&res))
{
return res.GetItemSuperLong(0);
}
return FALSE;
}
BOOL MGRBaseClient::TableGetRowidEx(LPCSTR dbname,LPCSTR tblname,superint_ut start,int num,NetTable *rowid)
{
NetDataTuple arg,res;
NetTable *p;
arg.AddItems(4);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
arg.SetItemSuperLong(2,start);
arg.SetItemLong(3,num);
if(Call("mgrbaseif_TableGetRowidEx",NULL,&arg,&res))
{
if(res.GetItemLong(0))
{
p=res.GetItemNetTable(1);
rowid->Clear();
p->CopyTo(rowid);
return TRUE;
}
}
return FALSE;
}
BOOL MGRBaseClient::TableGetNextRowid(LPCSTR dbname,LPCSTR tblname,superint_ut rowid,int num,NetTable *rowids)
{
NetDataTuple arg,res;
NetTable *p;
arg.AddItems(4);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
arg.SetItemSuperLong(2,rowid);
arg.SetItemLong(3,num);
if(Call("mgrbaseif_TableGetRowid",NULL,&arg,&res))
{
p=res.GetItemNetTable(0);
rowids->Clear();
p->CopyTo(rowids);
return TRUE;
}
return FALSE;
}
int MGRBaseClient::TableCountIndex(LPCSTR dbname,LPCSTR tblname)
{
NetDataTuple arg,res;
arg.AddItems(2);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
if(Call("mgrbaseif_TableCountIndex",NULL,&arg,&res))
{
return res.GetItemLong(0);
}
return 0;
}
superint_ut MGRBaseClient::TableGetSpace(LPCSTR dbname,LPCSTR tblname)
{
NetDataTuple arg,res;
arg.AddItems(2);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
if(Call("mgrbaseif_TableGetSpace",NULL,&arg,&res))
{
return res.GetItemSuperLong(0);
}
return 0;
}
int MGRBaseClient::FindTableId(LPCSTR dbname,LPCSTR tblname)
{
NetDataTuple arg,res;
arg.AddItems(2);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
if(Call("mgrbaseif_FindTableId",NULL,&arg,&res))
{
return res.GetItemLong(0);
}
return 0;
}
int MGRBaseClient::TableReadLongBinary(LPCSTR dbname,LPCSTR tblname,superint_ut rowid,LPCSTR colname,superint_ut start,BYTE *buf,int buflen)
{
NetDataTuple arg,res;
BYTE *p;
int size;
arg.AddItems(6);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
arg.SetItemSuperLong(2,rowid);
arg.SetItemString(3,colname);
arg.SetItemSuperLong(4,start);
arg.SetItemLong(5,buflen);
if(Call("mgrbaseif_TableReadLongBinary",NULL,&arg,&res))
{
p=res.GetItemBinary(0,&size);
memcpy(buf,p,size);
return size;
}
return 0;
}
int MGRBaseClient::TableWriteLongBinary(LPCSTR dbname,LPCSTR tblname,superint_ut rowid,LPCSTR colname,superint_ut start,BYTE *buf,int buflen)
{
NetDataTuple arg,res;
arg.AddItems(6);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
arg.SetItemSuperLong(2,rowid);
arg.SetItemString(3,colname);
arg.SetItemSuperLong(4,start);
arg.SetItemBinary(5,buf,buflen);
if(Call("mgrbaseif_TableWriteLongBinary",NULL,&arg,&res))
{
return res.GetItemLong(0);
}
return 0;
}
superint_ut MGRBaseClient::TableGetLongBinaryLength(LPCSTR dbname,LPCSTR tblname,superint_ut rowid,LPCSTR colname)
{
NetDataTuple arg,res;
arg.AddItems(4);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
arg.SetItemSuperLong(2,rowid);
arg.SetItemString(3,colname);
if(Call("mgrbaseif_TableGetLongBinaryLength",NULL,&arg,&res))
{
return res.GetItemSuperLong(0);
}
return 0;
}
BOOL MGRBaseClient::IndexCreate(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname,BOOL bunique,LPCSTR keydef)
{
NetDataTuple arg,res;
arg.AddItems(5);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
arg.SetItemString(2,idxname);
arg.SetItemLong(3,bunique);
arg.SetItemString(4,keydef);
if(Call("mgrbaseif_IndexCreate",NULL,&arg,&res))
{
return res.GetItemLong(0);
}
return 0;
}
BOOL MGRBaseClient::IndexCreateEx(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname,BOOL bunique,LPCSTR keydef,BOOL bForce)
{
NetDataTuple arg,res;
arg.AddItems(6);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
arg.SetItemString(2,idxname);
arg.SetItemLong(3,bunique);
arg.SetItemString(4,keydef);
arg.SetItemLong(5,bForce);
if(Call("mgrbaseif_IndexCreateEx",NULL,&arg,&res))
{
return res.GetItemLong(0);
}
return 0;
}
BOOL MGRBaseClient::IndexRename(LPCSTR dbname,LPCSTR tblname,LPCSTR oldidxname,LPCSTR newidxname)
{
NetDataTuple arg,res;
arg.AddItems(4);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
arg.SetItemString(2,oldidxname);
arg.SetItemString(3,newidxname);
if(Call("mgrbaseif_IndexRename",NULL,&arg,&res))
{
return res.GetItemLong(0);
}
return 0;
}
BOOL MGRBaseClient::IndexDrop(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname)
{
NetDataTuple arg,res;
arg.AddItems(3);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
arg.SetItemString(2,idxname);
if(Call("mgrbaseif_IndexDrop",NULL,&arg,&res))
{
return res.GetItemLong(0);
}
return 0;
}
BOOL MGRBaseClient::IndexIsExist(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname)
{
NetDataTuple arg,res;
arg.AddItems(3);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
arg.SetItemString(2,idxname);
if(Call("mgrbaseif_IndexIsExist",NULL,&arg,&res))
{
return res.GetItemLong(0);
}
return 0;
}
BOOL MGRBaseClient::IndexList(LPCSTR dbname,LPCSTR tblname,NetTable *idxlist)
{
NetDataTuple arg,res;
NetTable *p;
arg.AddItems(2);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
if(Call("mgrbaseif_IndexList",NULL,&arg,&res))
{
if( res.GetItemLong(0))
{
p=res.GetItemNetTable(1);
p->CopyTo(idxlist);
return TRUE;
}
}
return FALSE;
}
BOOL MGRBaseClient::IndexGetDef(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname,BOOL *bunique,MFTKEY *def)
{
NetDataTuple arg,res;
arg.AddItems(3);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
arg.SetItemString(2,idxname);
if(Call("mgrbaseif_IndexGetDef",NULL,&arg,&res))
{
if( res.GetItemLong(0))
{
*bunique=res.GetItemLong(1);
return res.GetItemMFTKEY(2,def);
}
}
return FALSE;
}
BOOL MGRBaseClient::IndexGetLastKey(LPCSTR dbname,LPCSTR idxname,MFTKEY *key)
{
NetDataTuple arg,res;
arg.AddItems(2);
arg.SetItemString(0,dbname);
arg.SetItemString(1,idxname);
if(Call("mgrbaseif_IndexGetLastKey",NULL,&arg,&res))
{
if( res.GetItemLong(0))
{
return res.GetItemMFTKEY(1,key);
}
}
return FALSE;
}
BOOL MGRBaseClient::IndexCheck(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname,BOOL bfix)
{
NetDataTuple arg,res;
arg.AddItems(4);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
arg.SetItemString(2,idxname);
arg.SetItemLong(3,bfix);
if(Call("mgrbaseif_IndexCheck",NULL,&arg,&res))
{
return res.GetItemLong(0);
}
return FALSE;
}
BOOL MGRBaseClient::IndexFetch(LPCSTR dbname,LPCSTR idxname,superint_ut start,int num,NetTable *rowid)
{
NetDataTuple arg,res;
NetTable *p;
arg.AddItems(4);
arg.SetItemString(0,dbname);
arg.SetItemString(1,idxname);
arg.SetItemSuperLong(2,start);
arg.SetItemLong(3,num);
if(Call("mgrbaseif_IndexFetch",NULL,&arg,&res))
{
if( res.GetItemLong(0))
{
p=res.GetItemNetTable(1);
p->CopyTo(rowid);
return TRUE;
}
}
return FALSE;
}
superint_ut MGRBaseClient::IndexCountRow(LPCSTR dbname,LPCSTR idxname)
{
NetDataTuple arg,res;
arg.AddItems(2);
arg.SetItemString(0,dbname);
arg.SetItemString(1,idxname);
if(Call("mgrbaseif_IndexCountRow",NULL,&arg,&res))
{
return res.GetItemSuperLong(0);
}
return 0;
}
BOOL MGRBaseClient::IndexQuery(LPCSTR dbname,LPCSTR idxname,MFTKEY &key,superint_ut start,int num,NetTable *rowids)
{
NetDataTuple arg,res;
NetTable *p;
arg.AddItems(5);
arg.SetItemString(0,dbname);
arg.SetItemString(1,idxname);
arg.SetItemMFTKEY(2,key);
arg.SetItemSuperLong(3,start);
arg.SetItemLong(4,num);
if(Call("mgrbaseif_IndexQuery",NULL,&arg,&res))
{
if( res.GetItemLong(0))
{
p=res.GetItemNetTable(1);
p->CopyTo(rowids);
return TRUE;
}
}
return FALSE;
}
BOOL MGRBaseClient::IndexFilter(LPCSTR dbname,LPCSTR idxname,NetTable ¶m,NetTable *out)
{
NetDataTuple arg,res;
NetTable *p;
arg.AddItems(3);
arg.SetItemString(0,dbname);
arg.SetItemString(1,idxname);
arg.SetItemNetTable(2,¶m,FALSE);
if(Call("mgrbaseif_IndexFilter",NULL,&arg,&res))
{
if( res.GetItemLong(0))
{
p=res.GetItemNetTable(1);
p->CopyTo(out);
return TRUE;
}
}
return FALSE;
}
superint_ut MGRBaseClient::IndexCountKey(LPCSTR dbname,LPCSTR idxname,MFTKEY &key)
{
NetDataTuple arg,res;
arg.AddItems(3);
arg.SetItemString(0,dbname);
arg.SetItemString(1,idxname);
arg.SetItemMFTKEY(2,key);
if(Call("mgrbaseif_IndexCountKey",NULL,&arg,&res))
{
return res.GetItemSuperLong(0);
}
return 0;
}
BOOL MGRBaseClient::IndexQueryBetween(LPCSTR dbname,LPCSTR idxname,MFTKEY &begin,MFTKEY &end,superint_ut start,int num,NetTable *rowids)
{
NetDataTuple arg,res;
NetTable *p;
arg.AddItems(6);
arg.SetItemString(0,dbname);
arg.SetItemString(1,idxname);
arg.SetItemMFTKEY(2,begin);
arg.SetItemMFTKEY(3,end);
arg.SetItemSuperLong(4,start);
arg.SetItemLong(5,num);
if(Call("mgrbaseif_IndexQueryBetween",NULL,&arg,&res))
{
if( res.GetItemLong(0))
{
p=res.GetItemNetTable(1);
p->CopyTo(rowids);
return TRUE;
}
}
return FALSE;
}
superint_ut MGRBaseClient::IndexCountBetween(LPCSTR dbname,LPCSTR idxname,MFTKEY &begin,MFTKEY &end)
{
NetDataTuple arg,res;
arg.AddItems(4);
arg.SetItemString(0,dbname);
arg.SetItemString(1,idxname);
arg.SetItemMFTKEY(2,begin);
arg.SetItemMFTKEY(3,end);
if(Call("mgrbaseif_IndexCountBetween",NULL,&arg,&res))
{
return res.GetItemSuperLong(0);
}
return 0;
}
BOOL MGRBaseClient::IndexQueryUpper(LPCSTR dbname,LPCSTR idxname, MFTKEY &key,superint_ut start,int num,NetTable *rowids)
{
NetDataTuple arg,res;
NetTable *p;
arg.AddItems(5);
arg.SetItemString(0,dbname);
arg.SetItemString(1,idxname);
arg.SetItemMFTKEY(2,key);
arg.SetItemSuperLong(3,start);
arg.SetItemLong(4,num);
if(Call("mgrbaseif_IndexQueryUpper",NULL,&arg,&res))
{
if( res.GetItemLong(0))
{
p=res.GetItemNetTable(1);
p->CopyTo(rowids);
return TRUE;
}
}
return FALSE;
}
superint_ut MGRBaseClient::IndexCountUpper(LPCSTR dbname,LPCSTR idxname ,MFTKEY &key)
{
NetDataTuple arg,res;
arg.AddItems(3);
arg.SetItemString(0,dbname);
arg.SetItemString(1,idxname);
arg.SetItemMFTKEY(2,key);
if(Call("mgrbaseif_IndexCountUpper",NULL,&arg,&res))
{
return res.GetItemSuperLong(0);
}
return 0;
}
BOOL MGRBaseClient::IndexQueryBelow(LPCSTR dbname,LPCSTR idxname, MFTKEY &key,superint_ut start,int num,NetTable *rowids)
{
NetDataTuple arg,res;
NetTable *p;
arg.AddItems(5);
arg.SetItemString(0,dbname);
arg.SetItemString(1,idxname);
arg.SetItemMFTKEY(2,key);
arg.SetItemSuperLong(3,start);
arg.SetItemLong(4,num);
if(Call("mgrbaseif_IndexQueryBelow",NULL,&arg,&res))
{
if( res.GetItemLong(0))
{
p=res.GetItemNetTable(1);
p->CopyTo(rowids);
return TRUE;
}
}
return FALSE;
}
superint_ut MGRBaseClient::IndexCountBelow(LPCSTR dbname,LPCSTR idxname ,MFTKEY &key)
{
NetDataTuple arg,res;
arg.AddItems(3);
arg.SetItemString(0,dbname);
arg.SetItemString(1,idxname);
arg.SetItemMFTKEY(2,key);
if(Call("mgrbaseif_IndexCountBelow",NULL,&arg,&res))
{
return res.GetItemSuperLong(0);
}
return 0;
}
superint_ut MGRBaseClient::IndexGetSpace(LPCSTR dbname,LPCSTR idxname)
{
NetDataTuple arg,res;
arg.AddItems(2);
arg.SetItemString(0,dbname);
arg.SetItemString(1,idxname);
if(Call("mgrbaseif_IndexGetSpace",NULL,&arg,&res))
{
return res.GetItemSuperLong(0);
}
return 0;
}
BOOL MGRBaseClient::IndexSync(LPCSTR dbname,LPCSTR tblname,LPCSTR idxname)
{
NetDataTuple arg,res;
arg.AddItems(3);
arg.SetItemString(0,dbname);
arg.SetItemString(1,tblname);
arg.SetItemString(2,idxname);
if(Call("mgrbaseif_IndexSync",NULL,&arg,&res))
{
return res.GetItemLong(0);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -