本文介绍了通过 CQLsh (Cassandra) 插入硬编码的 UUID的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
想通过 CQLsh 脚本填充一些静态测试数据.
这不起作用:(device_id 是 UUID)
插入设备(device_id、geohash、name、external_identifier、measures、tags)值('c37d661d-7e61-49ea-96a5-68c34e83db3a'、'9q9p3yyrn1'、'Acme1'、'936'、{'aparPower'、'actPower'、'actEnergy'}、{'make':'Acme'});
错误请求:无效的 STRING 常量(c37d661d-7e61-49ea-96a5-68c34e83db3a) 用于 uuid 类型的 device_id
我似乎找不到任何可转换为正确类型的 CQL 函数.我需要从 python 脚本中执行此操作吗?
谢谢,克里斯
解决方案
你不应该在 UUID 周围加上引号以阻止它被解释为字符串,即
插入设备(device_id、geohash、name、external_identifier、measures、tags)价值观(c37d661d-7e61-49ea-96a5-68c34e83db3a,'9q9p3yyrn1', 'Acme1', '936', {'aparPower','actPower','actEnergy'},{'make':'Acme'});
Would like to populate some static test data via a CQLsh script.
This doesn't work: (device_id is UUID)
insert into devices (device_id, geohash,name, external_identifier, measures, tags)
values ('c37d661d-7e61-49ea-96a5-68c34e83db3a','9q9p3yyrn1', 'Acme1', '936', {'aparPower','actPower','actEnergy'},{'make':'Acme'});
I can't seem to find any CQL function to convert to proper type. Do I need to do this from a python script?
Thanks,Chris
解决方案
You shouldn't put the quotes around the UUID to stop it being interpreted as a string i.e.
insert into devices (device_id, geohash,name, external_identifier, measures, tags)
values
(c37d661d-7e61-49ea-96a5-68c34e83db3a,'9q9p3yyrn1', 'Acme1', '936', {'aparPower','actPower','actEnergy'},{'make':'Acme'});
这篇关于通过 CQLsh (Cassandra) 插入硬编码的 UUID的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!