通过 CQLsh (Cassandra) 插入硬编码的 UUID [英] Inserting a hard-coded UUID via CQLsh (Cassandra)

查看:25
本文介绍了通过 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'});

Bad Request: Invalid STRING constant (c37d661d-7e61-49ea-96a5-68c34e83db3a) for device_id of type uuid

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的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆