Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
phpcassa在cql执行时出错_Php_Cassandra_Phpcassa - Fatal编程技术网

phpcassa在cql执行时出错

phpcassa在cql执行时出错,php,cassandra,phpcassa,Php,Cassandra,Phpcassa,我最近在cqlsh控制台中使用createtable创建了一个列族 我有以下专栏家庭 CREATE TABLE user ( id timeuuid PRIMARY KEY, balance decimal, is_free boolean, player_id bigint, ) 我想插入以下类型的数据 { "player_id": 104, "balance": "0.00", "is_free": false, "bonus": "3+3+

我最近在
cqlsh
控制台中使用
createtable
创建了一个列族

我有以下专栏家庭

CREATE TABLE user (
  id timeuuid PRIMARY KEY,
  balance decimal,
  is_free boolean,
  player_id bigint,
)
我想插入以下类型的数据

{
    "player_id": 104,
    "balance": "0.00",
    "is_free": false,
    "bonus": "3+3+3"
}
当我从
cqlsh
控制台插入时,插入如下

INSERT INTO keyspace.user (player_id, balance,is_free,bonus, id) 
VALUES (104,0.00,'3+3+3',67c5cb00-d814-11e2-9e13-59eb8e4538e5)
string 'INSERT INTO keyspace.user (player_id,balance,is_free,bonus,id) VALUES (104,0.00,false,'3+3+3','ca256040-d819-11e2-ae08-f78171d975c3')' 
string 'INSERT INTO keyspace.user (player_id,balance,is_free,bonus,id)
        VALUES (104,0.00,false,'3+3+3',12128260-d8ea-11e2-b5b3-0be38f9377b6)'
Id由
UUID::uuid1()->字符串生成

当我尝试从
cqlsh
插入时,它不会给出任何错误。但是,在phpcassa中,它给出了以下错误:

Expected key 'ID' to be present in WHERE clause for 'users'
我已经将客户端的cql版本设置为3.0.0

$pool->get()->client->set_cql_version("3.0.0");
我已经尝试过像这样插入timeuuid字段
'67c5cb00-d814-11e2-9e13-59eb8e4538e5'

顺便说一下,执行的变量
$cql
var\u dump
如下所示:

INSERT INTO keyspace.user (player_id, balance,is_free,bonus, id) 
VALUES (104,0.00,'3+3+3',67c5cb00-d814-11e2-9e13-59eb8e4538e5)
string 'INSERT INTO keyspace.user (player_id,balance,is_free,bonus,id) VALUES (104,0.00,false,'3+3+3','ca256040-d819-11e2-ae08-f78171d975c3')' 
string 'INSERT INTO keyspace.user (player_id,balance,is_free,bonus,id)
        VALUES (104,0.00,false,'3+3+3',12128260-d8ea-11e2-b5b3-0be38f9377b6)'
这里有什么问题?

execute\u cql\u query()
函数在cql\u版本3.0.0中似乎不起作用

虽然在phpcassa中cql3支持不是官方的,
execute\u cql3\u query()
函数通过使用以下代码对我来说运行稳定且良好

$this->_connection_pool->get()->client->execute_cql3_query($cql, ConsistencyLevel::ONE);
其中,
$cql
如下所示:

INSERT INTO keyspace.user (player_id, balance,is_free,bonus, id) 
VALUES (104,0.00,'3+3+3',67c5cb00-d814-11e2-9e13-59eb8e4538e5)
string 'INSERT INTO keyspace.user (player_id,balance,is_free,bonus,id) VALUES (104,0.00,false,'3+3+3','ca256040-d819-11e2-ae08-f78171d975c3')' 
string 'INSERT INTO keyspace.user (player_id,balance,is_free,bonus,id)
        VALUES (104,0.00,false,'3+3+3',12128260-d8ea-11e2-b5b3-0be38f9377b6)'