3

我是 C 语言的新手。我使用 aws_dynamo 库进行 amazon dynamo db 通信。我使用 aws_dynamo 库成功创建了一个表。

像这样的结果表

时间戳 | 姓名

101 | 马纳夫

102 | manaf2

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

这是我的代码

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 个值。什么是实际问题?这种方法最适合我吗?

4

1 回答 1

0

请尝试适用于 C++ 的 AWS 开发工具包。如果您不能在程序中使用 C++ 代码,请将逻辑包装在外部 C 库中并调用它。

于 2017-02-05T04:50:47.833 回答