[PB] BatchGetRecords

Supported version: 3.50.0

Brief Introduction

This interface gets records in batches according to the primary key, which meets the batch query scenario and supports returning fields

POST http://{Tcaplus_REST_URL}

Request Syntax

Http Request

#Tencent Cloud Console RESTful Endpoint, ip: 80, port: 80 by default
http://172.17.0.22
#TcaplusDB Local docker RESTful Endpoint, ip: 31001, port: 31001 by default
http://9.135.8.93:31001

Http Head

Name Required or not Limitations Description
x-tcaplus-target Yes None Tcaplus.BatchGetRecords
x-tcaplus-version Yes None Tcaplus3.50.0
x-tcaplus-app-id Yes None Correspond to the app id number(aka, cluster access id)
x-tcaplus-zone-id Yes None Correspond to the zone number (aka, table group id)
x-tcaplus-protocol-version Yes None Correspond to the protocol version number, default 2.0
x-tcaplus-table-name Yes None Correspond to the table name
x-tcaplus-pwd-md5 Yes None App password (aka, cluster access password), that is, the md5 value after the calculation
x-tcaplus-idl-type Yes None protobuf
x-tcaplus-result-flag No None 0: No data will be returned after successful operation; 1: After the operation is successful, the data that is consistent with the request will be returned; 2: After the operation is successful, the data after this update operation will be returned; 3: After the operation is successful, the data before the tcapsvr operation will be returned
x-tcaplus-data-version-check No 1: Detect the record version number. Only when the version number is the same as the server version number, the version number will automatically increase; 2: Do not detect the record version number, but force the client record version number to be written to the server; 3: Do not detect the record version number, and automatically increase the server version number
x-tcaplus-data-version No Version number

Example:

x-tcaplus-target:Tcaplus.BatchGetRecords
x-tcaplus-app-id:{string}
x-tcaplus-zone-id:{string}
x-tcaplus-protocol-version:{string}
x-tcaplus-table-name:{string}
x-tcaplus-pwd-md5:{string}
x-tcaplus-result-flag:result_flag
x-tcaplus-version:{string}
x-tcaplus-data-version-check:{string}
x-tcaplus-idl-type:protobuf

Data

Use json format to represent the record related information. Parameter description:

  • Select: Optional. It filters the fields to be returned, which cannot include primary key fields (default return)
  • MultiRecords: Required, record set
  • Record: Required, primary key of a record

Example:

{
    "Select": ["game_server_id", "is_online", "pay"],
    "MultiRecords": [{

        "Record": {
            "player_id": 5,
            "player_name": "5",
            "player_email": "5"
        }
    }, {

        "Record": {
            "player_id": 6,
            "player_name": "6",
            "player_email": "6"
        }
    }]
}

Complete Request Example

curl -i -XPOST -H 'x-tcaplus-target: Tcaplus.BatchGetRecords' -H 'x-tcaplus-app-id: 70' -H 'x-tcaplus-zone-id: 1' -H 'x-tcaplus-protocol-version: 2.0' -H 'x-tcaplus-table-name: game_players' -H 'x-tcaplus-pwd-md5: 0972ad76decf4d11a69e2e0d9af335da' -H 'x-tcaplus-result-flag: 2' -H 'x-tcaplus-version: Tcaplus3.50.0' -H 'x-tcaplus-data-version-check: 2' -H 'x-tcaplus-idl-type: protobuf' http://172.17.32.17 -d '{
    "Select":["game_server_id", "is_online", "pay"],
    "MultiRecords": [{

        "Record": {
            "player_id":5,
            "player_name":"5",
            "player_email":"5"
        }
    }, {

        "Record": {
            "player_id":6,
            "player_name":"6",
            "player_email":"6"
        }
    }]
}'

Return Syntax

Return Parameter

Parameter name Description
ErrorCode Return code
ErrorMsg Return message
SucceedRecords Data returned of successful records in json format. For details, refer to Data section
SucceedNum Number of successful records
FailedRecords Data returned of failed records in json format. For details, refer to Data section
FailedNum Number of failed records

Return Example

Successful Return Example

{
    "ErrorCode": 0,
    "ErrorMsg": "Succeed",
    "SucceedRecords": [{
        "RecordVersion": 1,
        "Record": {
            "game_server_id": 5,
            "is_online": false,
            "pay": {
                "pay_id": 5,
                "amount": 5,
                "method": 5
            },
            "player_email": "5",
            "player_id": 5,
            "player_name": "5"
        }
    }, {
        "RecordVersion": 1,
        "Record": {
            "game_server_id": 6,
            "is_online": false,
            "pay": {
                "pay_id": 6,
                "amount": 6,
                "method": 6
            },
            "player_email": "6",
            "player_id": 6,
            "player_name": "6"
        }
    }],
    "SucceedNum": 2
}

Failed Return Example

{
    "ErrorCode": 261,
    "ErrorMsg": "txhdb_record_not_exist",
    "SucceedRecords": [],
    "SucceedNum": 0,
    "FailedRecords": [{
        "Record": {
            "player_email": "5",
            "player_id": 5,
            "player_name": "5"
        }
    }, {
        "Record": {
            "player_email": "6",
            "player_id": 6,
            "player_name": "6"
        }
    }],
    "FailedNum": 2
}

Error code

Refer to Common Error Codes

Other Reference Documents

[[PB Generic Table][C++ SDK] Interface Description for Batch-Getting Multiple Records](../../01C++_SDK/02Interface_Documents/08[Generic_Table]Batch_Get_Multiple_Records.md

[[PB Generic Table] [Go SDK] Interface Description for Batch-Getting Multiple Records](../../02Go_SDK/02Interface_Documents/11[Generic_Table]Batch_Get_Multiple_Records.md

results matching ""

    No results matching ""