使用c从amazon dynamo db中回收数据

时间:2016-05-17 15:15:05

标签: c amazon-web-services amazon-dynamodb aws-sdk amazon-dynamodb-streams

我是C语言的新手。我使用aws_dynamo库进行亚马逊发电机数据库通信。我使用aws_dynamo库成​​功创建了一个表。

像这样的结果表

时间戳|名称

101 | manaf

102 | manaf2

  

但我无法使用aws_dynamo库从db获取数据。

这是我的代码

static int example_get_item(struct aws_handle *aws)
{
    struct aws_dynamo_attribute attributes[] = {
        {
         .name = "name",
         .name_len = strlen("name"),
         .type = AWS_DYNAMO_STRING,
         }
    };
    struct aws_dynamo_get_item_response *r = NULL;
    struct aws_dynamo_attribute *real_name;

    const char *request = "{\
    \"TableName\":\"testTable\",\
    \"Key\":{\
        \"HashKeyElement\":{\"N\":\"101\"}\
    },\
    \"AttributesToGet\":[\
        \"name\"]\
    }";

    r = aws_dynamo_get_item(aws, request, attributes,
                sizeof(attributes) / sizeof(attributes[0]));
    if (r == NULL) {
        return -1;
    }
    if (r->item.attributes == NULL) {
        aws_dynamo_free_get_item_response(r);
        return -1;
    }
    real_name = &(r->item.attributes[0]);
    printf("name = %s \n", real_name->value.string);
    aws_dynamo_free_get_item_response(r);
    return 0;
}

我需要使用C代码从amazon dynamoDb获得超过1000个值。什么是实际问题?这种方法对我来说最好吗?

1 个答案:

答案 0 :(得分:0)

请尝试AWS SDK for C++。如果您不能在程序中使用C ++代码,请将逻辑包装在extern C库中并调用它。