web-dev-qa-db-ja.com

CQLshを介したハードコーディングされたUUIDの挿入(Cassandra)

CQLshスクリプトを介していくつかの静的テストデータを入力したいと思います。

これは機能しません:(device_idは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'});

不正な要求:uuidタイプのdevice_idの無効なSTRING定数(c37d661d-7e61-49ea-96a5-68c34e83db3a)

適切な型に変換するCQL関数が見つかりません。 pythonスクリプトからこれを行う必要がありますか?

ありがとう、クリス

46
Chris H

UUIDを文字列として解釈されるのを防ぐために、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'});
85
Richard

代替:uuid()関数を使用します。これをDevCenter 1.6.0でテストしました。

cHANGE_LOG(someid、modifieddatetime、snum、gnum、source)値(uuid()、 '2000-12-12 08:00:00'、 '21A'、 ''、 'system')に挿入します;

0
harish