2012-06-25 29 views
1

我創造了這個表cqsql --cql3外殼:如何在表中插入一個主鍵爲複合的新行?

CREATE TABLE Stats (
gsd   blob, 
period  int, 
tid   blob, 
sum   int, 
uniques  blob, 
PRIMARY KEY(gid, period, tid) 
); 

我使用clj-hector包裝庫。

我創建的羣集和密鑰空間對象:

(def clstr (h/cluster "Test Cluster" "localhost")) 

(def ksp (h/keyspace clstr "mks")) 

如何插入新行考慮以前的結構?如果你不熟悉clj-hector,Hector的代碼肯定會起作用,我將把它變成Clojure。

回答

1

我相信,但還沒有確認,你要插入兩列:

行鍵是GSD的價值

一列有周期的價值,TID的值和複合名稱文字「總和」與總和

第二列具有一個複合名稱與週期的值,TID的值,和文字「不重複」與不重複的列值

0

GID,週期,TID的一個列值被表示爲來自「正常」列cql查詢。

但是你可能使用datastax/java-driver或其中一個clojure包裝器,hector基於節儉,並且它只支持部分cql3,所以我不確定這是否會起作用。

無恥插頭:看看https://github.com/mpenet/aliahttps://github.com/mpenet/hayt

0

您可以參考http://clojurecassandra.info/articles/kv.html這是CQL操作的(而通用)指南誰使用卡桑德拉使用Clojure的人。您可以使用簡單的CQL語法,其餘由C *內部處理:

INSERT INTO users (gsd, period, tid, sum, uniques) VALUES (?, ?, ?, ?, ?);

對於斑點,我會強烈建議使用預處理語句,實際上是:http://clojurecassandra.info/articles/kv.html#toc_4

如果你願意,你可以結賬Cassaforte:https://github.com/clojurewerkz/cassaforte 它很容易起牀和運行。

相關問題