【问题标题】:Nodejs - Apache Cassandra (using Datastax Driver)Nodejs - Apache Cassandra(使用 Datastax 驱动程序)
【发布时间】:2019-01-31 04:53:04
【问题描述】:

我正在尝试在 cassandra 中插入地图类型:

const query = 'INSERT INTO stats.tickets (office, line, generation, inserted_at, meta, number, prefix) VALUES (:office, :line, :generation, :inserted_at, :meta, :number, :prefix)';

const parametersExample = {
    office: "office",
    line: "line",
    generation: 10,
    inserted_at: Date.now(),
    meta: {"tag1": "ujkukkik", "tag2": "asdascee"},
    number: 1,
    prefix: "prefix_"
};

const result = async () => {
    return await client.execute(query, parametersExample, { prepare: true });
};

result().then( res => {
    res.rows.map( row => console.log(row.content) );
    process.exit();
}).catch( err => console.error(err));

代码插入行但显示以下消息:

TypeError: Cannot read property 'map' of undefined
at lib/handleData.js:23:14
at <anonymous>
at process._tickDomainCallback (internal/process/next_tick.js:228:7)

是什么原因?

【问题讨论】:

    标签: node.js cassandra cassandra-driver


    【解决方案1】:

    这是正常行为 - 根据CQL documentation

    除非使用 IF NOT EXISTS,否则 INSERT 不会返回任何结果。

    所以驱动程序接收到undefined... 通常.map 将用于选择。

    【讨论】:

      猜你喜欢
      • 2017-08-12
      • 2016-02-27
      • 2017-01-20
      • 1970-01-01
      • 2017-10-04
      • 1970-01-01
      • 2018-02-15
      • 2013-12-23
      • 2015-10-25
      相关资源
      最近更新 更多