1
當我嘗試在我的卡桑德拉表更新數據,我得到了以下錯誤消息:卡桑德拉更新語句
型「Cassandra.InvalidQueryException」未處理的異常發生在Cassandra.dll
其他信息:切片限制不UPDATE語句支持集羣列
這是我的代碼,不會實際更新:
public void updateMeters(List<model> update)
{
Connect();
// List<int> blabla
var statement = session.Prepare("UPDATE csvmeter SET meterid=? where MeterName=? and timeStamp<?");
var tasks = new List<Task>();
foreach (var item in update)
{
var bind = statement.Bind(update.Select(x => x.MeterId), update.Select(x => x.MeterNumber), DateTime.Now);
var resultSetFuture = session.ExecuteAsync(bind);
tasks.Add(resultSetFuture);
}
Task.WaitAll(tasks.ToArray());
CloseConnection();
}
我知道幾乎肯定問題發生在and Timestamp<?
,因爲它是我的主鍵的一部分。
這是我的數據庫模型:
Create table csvmeter (
meterName varchar,
timeStamp timestamp,
Value double,
meterID int,
PRIMARY KEY(meterName, timeStamp));
我想基礎上,Metername更新meterID。這metername並不鮮明。