У меня есть таблица, созданный следующим образом:Установка метки времени в Кассандре
CREATE TABLE my_table (
date text,
id text,
time timestamp,
value text,
PRIMARY KEY (id));
CREATE INDEX recordings_date_ci ON recordings (date);
Я могу просто добавить новую строку в таблицу, используя следующий код узла:
const cassandra = require('cassandra-driver');
const client = new cassandra.Client({ contactPoints: ['localhost'], keyspace: 'my_keyspace'});
const query = 'INSERT INTO my_table (date, id, time, url) VALUES (?, ?, ?, ?)';
client.execute(query, ['20160901', '0000000000', '2016-09-01 00:00:00+0000', 'random url'], function(err, result) {
if (err){
console.log(err);
}
console.log('Insert row ended:' + result);
});
Однако, Я получаю следующее сообщение об ошибке:
'Error: Expected 8 or 0 byte long for date (24)
Когда я изменить метку времени EPOC:
client.execute(query, ['20160901', '0000000000', 1472688000, 'random url']
я получаю: d
OverflowError: normalized days too large to fit in a C int
Я могу вставить новые строки через cqlsh, так что я, вероятно, отсутствует что-то с Node.js водителем.
Любая идея?
Благодаря
Perfect. Благодарю. Я должен был получить это :-) –