1

我正在尝试使用此代码创建列族

 

    公共无效 CreateAColumnFamily()
     {
      使用 (var db = new CassandraContext(keyspace:"Earth",
        服务器:服务器))
      {
        CassandraColumnFamily cf = db.GetColumnFamily("People");
        如果(cf == null)
        {
          db.ExecuteNonQuery(@"CREATE COLUMFAMILY People (
            KEY ascii 主键,
            名字文本,
            姓氏文本,
            年龄整数,
            标题文字
    );");
        }
        cf = db.GetColumnFamily("人");
      }
    }

但什么也没有发生。如果我只是执行命令create column family People in cassandra-cli - column family 正在创建。我做错了什么?

4

1 回答 1

0

您的代码假定他们列族“人”已经存在,如果您尝试创建它,则不应该。

db.GetColumnFamily("人"); // 表示我们正在获取一个现有的 CF

创建柱族:

db.TryCreateColumnFamily(new CassandraColumnFamilySchema
{
    FamilyName = "Tags",
    KeyValueType = CassandraType.AsciiType,
    ColumnNameType = CassandraType.Int32Type,
    DefaultColumnValueType = CassandraType.UTF8Type
});

来源:来自 fluent cassandra github 的示例

也作为旁注。我努力寻找流利的 cassandra 的文档,看起来你也这样做了。如果您正在学习 Cassandra,请尝试使用datastax C# 驱动程序……大量文档和更大的社区。

于 2013-08-17T18:02:23.823 回答