C++ Client Driver.
More...
#include "core.hpp"
#include "clientDef.h"
#include "bson/bson.hpp"
#include "fromjson.hpp"
#include "spd.h"
#include <map>
#include <string>
#include <vector>
Go to the source code of this file.
|
namespace | sdbclient |
| SequoiaDB Driver for C++.
|
|
#define FLG_DELETE_ONE 0x00000002 |
The flag represent whether to delete only one matched record or all matched records
#define FLG_INSERT_CONTONDUP 0x00000001 |
The flag represents whether insert continue(no errors were reported) when hitting index key duplicate error
#define FLG_INSERT_CONTONDUP_ID 0x00000020 |
The flag is for internal use only The flag represents only the error of the dup key of '$id' index will be ignored
#define FLG_INSERT_REPLACEONDUP 0x00000004 |
The flag represents replacing the existing record by the new record and continuing when insert hitting index key duplicate error
#define FLG_INSERT_REPLACEONDUP_ID 0x00000040 |
The flag represents only the error of the dup key of '$id' index will cause the new record to overwirte the original one
#define FLG_INSERT_RETURN_OID 0x10000000 |
The flag represents whether insert return the "_id" field of the record for user
#define FLG_INSERT_UPDATEONDUP 0x00000008 |
The flag represents updating the existing record by the specified updator and continuing when insert hitting index key duplicate error
#define QUERY_FOR_SHARE 0x00040000 |
Acquire S lock on the records that are read. When the session is in transaction and setting this flag, the transaction lock will not released until the transaction is committed or rollback. When the session is not in transaction, the flag does not work.
#define QUERY_FOR_UPDATE 0x00010000 |
Acquire U lock on the records that are read. When the session is in transaction and setting this flag, the transaction lock will not released until the transaction is committed or rollback. When the session is not in transaction, the flag does not work.
#define QUERY_FORCE_HINT 0x00000080 |
Force to use specified hint to query, if database have no index assigned by the hint, fail to query.
#define QUERY_KEEP_SHARDINGKEY_IN_UPDATE 0x00008000 |
The sharding key in update rule is not filtered, when executing queryAndUpdate.
#define QUERY_PARALLED 0x00000100 |
Enable parallel sub query, each sub query will finish scanning different part of the data.
#define QUERY_PREPARE_MORE 0x00004000 |
Enable prepare more data when query
#define QUERY_WITH_RETURNDATA 0x00000200 |
In general, query won't return data until cursor gets from database, when add this flag, return data in query response, it will be more high-performance
#define RELEASE_INNER_HANDLE |
( |
|
handle | ) |
|
Value:do \
{ \
if ( handle ) \
{ \
delete handle ; \
handle = NULL ; \
} \
} while( 0 )
This micro is for internal use, not a public api, it will be removed in the future
#define SDB_PAGESIZE_16K 16384 |
#define SDB_PAGESIZE_32K 32768 |
#define SDB_PAGESIZE_4K 4096 |
#define SDB_PAGESIZE_64K 65536 |
#define SDB_PAGESIZE_8K 8192 |
#define SDB_PAGESIZE_DEFAULT 0 |
0 means using database's default pagesize, it 64k now
#define sdbReplicaNode sdbNode |
class name 'sdbReplicaNode' will be deprecated in version 2.x, use 'sdbNode' instead of it.
The sharding key in update rule is not filtered, when executing update or upsert.
#define UPDATE_ONE 0x00000002 |
The flag represent whether to update only one matched record or all matched records
- Enumerator:
SDB_LOB_CREATEONLY |
Open a new lob only
|
SDB_LOB_READ |
Open an existing lob to read
|
SDB_LOB_WRITE |
Open an existing lob to write
|
SDB_LOB_SHAREREAD |
Open an existing lob to share read
|
- Enumerator:
SDB_LOB_SEEK_SET |
Seek from the beginning of file
|
SDB_LOB_SEEK_CUR |
Seek from the current place
|
SDB_LOB_SEEK_END |
Seek from the end of file
|