使用nodejs Dynamodb 创建表?

ami*_*til 2 node.js amazon-dynamodb

我想创建一个表并想使用 Dynamodb(NodeJs) 创建 6-7 个列/属性。我创建了一个表,但我不能添加 2 个以上的属性。我是这个平台的新手,谁能帮我在一个表中创建多个属性。

Bru*_*olo 5

在 DynamoDB 上,您必须仅定义Hash Key和可选的Sort Key您的表。其余的属性不必定义!你可以推送任何你想要的数据。

查看下面的示例,基于官方文档

我正在创建一个Movies带有 Hash:Year和 Sort:的表Title。然后我正在创建具有更多属性的电影:

var AWS = require("aws-sdk");

AWS.config.update({
  region: "us-west-2",
  endpoint: "http://localhost:8000"
});

var client = new AWS.DynamoDB();
var documentClient = new AWS.DynamoDB.DocumentClient();

var tableName = "Movies";

var params = {
    TableName: tableName,
    KeySchema: [
        { AttributeName: "year", KeyType: "HASH"},  //Partition key
        { AttributeName: "title", KeyType: "RANGE" }  //Sort key
    ],
    AttributeDefinitions: [
        { AttributeName: "year", AttributeType: "N" },
        { AttributeName: "title", AttributeType: "S" }
    ],
    ProvisionedThroughput: {
        ReadCapacityUnits: 10,
        WriteCapacityUnits: 10
    }
};

client.createTable(params, function(tableErr, tableData) {
    if (tableErr) {
        console.error("Error JSON:", JSON.stringify(tableErr, null, 2));
    } else {
        console.log("Created table successfully!");
    }

    // Adding Batman movie to our collection
    var params = {
        TableName: tableName,
        Item: {
            "year": 2005,
            "title": "Batman Begins",
            "info": {
                "plot": "A young Bruce Wayne (Christian Bale) travels to the Far East.",
                "rating": 0
            }
        }
    };

    console.log("Adding a new item...");
    documentClient.put(params, function(err, data) {
        if (err) {
            console.error("Error JSON:", JSON.stringify(err, null, 2));
        } else {
            console.log("Added item successfully!");
        }
    });
});
Run Code Online (Sandbox Code Playgroud)