当前位置: 首页 > 知识库问答 >
问题:

如何通过复合键获取项?

常嘉平
2023-03-14
const dynamoDB = new AWS.DynamoDB.DocumentClient();
    var params: any = {};
    params.TableName = 'StockDailyCandles';
    var key = { 'symbol': 'AAPL', 'datetime': '640590008898' }; // example timestamp
    params.Key = key;

    var x = await dynamoDB.get(params).promise();
    return (x.Item ? true : false);

表的复合键是symbol和“datetime”(它只是一个时间戳)。这两列在dynamodb中都设置为字符串。

我收到的错误是:提供的键元素与模式不匹配

共有1个答案

益智明
2023-03-14

请像这样尝试:

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

AWS.config.update({ region: "us-west-2" });

const documentClient = new AWS.DynamoDB.DocumentClient();

async function getItem() {
  const params = {
    TableName: "RetailDatabase",
    Key: {
      pk: "jim.bob@somewhere.com",
      sk: "metadata",
    },
  };

  const response = await documentClient.get(params).promise();
  return response;
}

getItem()
  .then((data) =>
    console.log("GetItem succeeded:", JSON.stringify(data, null, 2))
  )
  .catch((error) => console.error(JSON.stringify(error, null, 2)));
 类似资料:
  • 问题内容: 我的代码如下: rs 总是返回时不是null ,有人对此有想法吗?谢谢。 问题答案: 元数据接口实现由驱动程序供应商实现。某些驱动程序和某些数据库可能不支持它。这是来自Javadoc的文本:一些DatabaseMetaData方法以ResultSet对象的形式返回信息列表。常规的ResultSet方法(例如getString和getInt)可用于从这些ResultSet对象检索数据。如

  • 问题内容: 我从字符串定义一个新的gson对象: 此处的字符串示例:http : //api.soundrop.fm/spaces/XJTt3mXTOZpvgmOc 然后尝试返回一个值: 最后用: 但是我得到一个错误: 完整班:主班:http : //pastebin.com/v4LrZm6k 无线电班:http : //pastebin.com/2BWwb6eD 问题答案: 这是Java。字段根

  • 问题内容: 我正在尝试使用HashMap将唯一字符串映射到字符串ArrayList,如下所示: 基本上,我希望能够通过数字访问密钥,而不是使用密钥名称。我希望能够访问所述键的值,以对其进行迭代。我在想像这样的事情: 是否有捷径可寻? 问题答案: 您可以通过调用来遍历键,也可以通过调用来遍历项。遍历条目可能会更快。 如果要确保按插入键的顺序遍历键,请使用。 顺便说一句,我建议将地图的声明类型更改为。

  • 问题内容: 给定一个表名,如何从plpgsql函数中提取主键列及其数据类型的列表? 问题答案: 上面的查询非常糟糕,因为它确实很慢。 我会推荐这个正式版本: http://wiki.postgresql.org/wiki/Retrieve_primary_key_columns 如果需要模式,查询如下

  • 问题内容: 我有一个非常简单的JavaScript对象,用作关联数组。是否有一个简单的函数可以让我获取值的键,还是必须迭代该对象并手动找到它? 问题答案: 使用Underscore.js库:

  • 问题内容: 如何获得Java 键盘EG(+ ,+ )上的按键组合? 我使用监听器,键盘上所有按键的监听器。我可以使用该监听器捕获键盘上的所有按键事件。但是,我无法捕捉到(+ + )....等组合键。 问题答案: