admin 管理员组文章数量: 1184232
如何正确更新类型为 map<boolean, int> 的列?
我在 Cassandra 中有下表:
CREATE TABLE my_table (
id int,
map_bool_int_col MAP<boolean, int>,
PRIMARY KEY (id)
);
根据 cassandra Node.js 驱动程序文档 我可以使用 js 对象更新具有映射类型的列。
所以我尝试发送以下查询:
client.execute("UPDATE my_table SET map_bool_int_col = ? WHERE id = ?", [{"false": 1, "true": 2}, 1], {prepare: true});
执行上面的代码后,列有值
{true: 2}
,假钥匙就这样消失了。
我尝试发送
{false: 1, true: 2}对象,结果是一样的。我想是因为所有对象键仍然是字符串。我有点设法通过发送此对象
{"": 1, "true": 2} 来更新具有错误值的列 - 因此它将空字符串转换为错误。但是发送空字符串而不是布尔值似乎不对。还有另一种方法可以使用 cassandra nodejs 驱动程序使用假键更新具有此类类型的列吗? 回答如下:
在这种情况下,地图的编码发生了一些奇怪的事情。我已提交 NODEJS-650 以进一步调查此问题。
本文标签: 如何正确更新类型为 mapltboolean intgt 的列
版权声明:本文标题:如何正确更新类型为 map<boolean, int> 的列? 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.roclinux.cn/b/1717611006a709613.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论