【发布时间】:2019-09-22 15:26:48
【问题描述】:
我是 cassandra 的新手。我正在使用最新版本的 cassandra。在新添加的表中插入数据时,出现“预期为 8 或 0 字节长 (4)”的异常。我在 .net 中使用 CassandracsharpDriver .我的代码和查询是
代码块:
Query : string query =
"INSERT INTO test_table(Id,Name,Date,CreatedOn) values (?,?,?,?)";
BatchStatement("_test", query, 394741470, "test", "2019-05-06");
public void BatchStatement(string keySpace, string query,params object[] parameter)
{
try
{
BatchStatement objBatchStatement = new BatchStatement();
PreparedStatement statement = PrepareQueryStatement(keySpace, query);
objBatchStatement.Add(statement.Bind(parameter));
var session = cluster.Connect(keySpace);
//objBatchStatement.ConsistencyLevel
// Execute the batch
// RowSet row = session.Execute(query);
RowSet row = session.Execute(objBatchStatement);
}
catch (Exception ex)
{
Console.WriteLine("Excpetion occured during batch operation method Name BatchStatement error : " + ex.ToString());
}
}
//session.Execute(objBatchStatement); code is throwing excpetion expected 8 or 0 byte long (4)
谢谢
【问题讨论】:
-
通过简单的查询,它可以工作,但不能使用 Batchstatement。我必须在 cassandra 中插入多条记录。
-
如果
CreatedOn有默认值,则应在查询中跳过它。"INSERT INTO test_table(Id,Name,Date) values (?,?,?)";