- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在试用 DataStax Cassandra .NET 驱动程序,我正在尝试实现比一桶字符串更复杂的东西(请参阅 https://gist.github.com/peschkaj/5794713 )。
当我尝试使用
创建表格时var table = session.GetTable<SalesOrder>();
table.CreateIfNotExists();
我得到以下异常:
System.InvalidOperationException: Operation is not valid due to the current state of the object
at Cassandra.Data.Linq.CqlQueryTools.GetCqlTypeFromType (System.Type tpy) [0x00000] in <filename unknown>:0
at Cassandra.Data.Linq.CqlQueryTools.GetCreateCQL (ITable table) [0x00000] in <filename unknown>:0
at Cassandra.Data.Linq.Table`1[CassandraTest.SalesOrder].Create (ConsistencyLevel consictencyLevel) [0x00000] in <filename unknown>:0
at Cassandra.Data.Linq.Table`1[CassandraTest.SalesOrder].CreateIfNotExists (ConsistencyLevel consictencyLevel) [0x00000] in <filename unknown>:0
at CassandraTest.MainClass.Main (System.String[] args) [0x00056] in /Users/jeremiah/Projects/CassandraTest/CassandraTest/Program.cs:71
操作失败,部分原因是 DateTime
,部分原因是自定义类型。使用 C# 驱动程序将复杂对象保存回 Cassandra 的适当语法/模式/等是什么?
最佳答案
查看代码,驱动程序似乎只有 timestamp
的映射-> DateTimeOffset
类型(参见 code )。如果您更改 DateTime
反对 DateTimeOffset
,它解决了这个问题。我对他们忽略了 DateTime
的映射这一事实并不感到兴奋。类型,不过。
驱动程序不理解你的嵌套复杂类型Address
或 LineItem
,也没有内置的方式(ORM)来做到这一点。我看到两个选项:
Address
和 LineItem
类只包含基本类型,你可以将它们表示为 Dictionary<K,V>
转换为 CQL 3.0 map
数据类型。同样,如果您需要强类型对象,则需要手动干预。
ListItem
的问题是 CQL 3.0 list
不能包含另一个集合 - 在本例中为 map
.为此,您又回到了 JSON,当然,只要它是可序列化的,您就可以根据需要变得尽可能复杂。我 fork 了你的要点并做了一些粗略的调整,让你了解如何让这个基本示例工作。 https://gist.github.com/dlbromen/5811969
关于c# - 使用 Datastax Cassandra .NET 客户端创建表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17140744/
我正在阅读 Scylla 的文档,因为我们正计划从 DSE 迁移到本地 Scylla。然而,in their documentation ,他们说不支持 DSE SSTable 格式。 Here他们提
我正在使用与 Datastax Enterprise 捆绑在一起的 gremlin-console (v3.2.7)。启动时它会自动连接到远程 gremlin 服务器。接下来,我创建一个别名来访问右侧
我正在阅读 Scylla 的文档,因为我们正计划从 DSE 迁移到本地 Scylla。然而,in their documentation ,他们说不支持 DSE SSTable 格式。 Here他们提
有谁知道如何在使用 amazon ec2 M3.Xlarge 机器的集群中使用 Datastax 企业(使用 opscenter)? 当我尝试使用这些类型的实例(使用 ssd)时,出现以下错误: 启动
我了解 DSE 5.1 运行 Solr 6.0 版本。我正在尝试使用 Solr 本地参数来使用 facet.pivot 功能,但它似乎不起作用。 我的数据如下 Simple 4 fields 我需要的
我在 Datastax 4.6 集群上有一个大型但简单的 Cassandra 数据库。对于这个非常简单的用例来说,许可证续订是禁止的,我正在尝试迁移到直接的 Apache 或 Datastax Com
我正在尝试在 Windows 7 机器上使用 Datastax C# 客户端驱动程序连接到在虚拟机器 (Ubuntu) 上运行的 DSE Cassandra。 这是我的代码: Cluster _clu
我从 CLI 中创建了这样的列族- create column family profile with key_validation_class = 'UTF8Type' and co
我正在使用 OpsCenter 5.1.1 运行 DSE 4.6.5 集群 (Cassandra 2.0.14.352) 一天一两次,其中一个节点(有时更多)停止报告指标,直到我手动重新启动 data
我需要在 cassandra 的表中选择不同的计数。 据我所知,cassandra 不支持直接不同计数,甚至像 rdbms 这样的嵌套查询也不支持。 select count(*) from (sel
我在尝试为创建的角色授予权限时遇到异常。 命令: GRANT ALL PERMISSIONS on KEYSPACE test_ks to ks_admin; 错误: ServerError: jav
我刚刚安装了 DataStax DevCenter。但是在加载时,会弹出自动更新和使用页面。但是,“确定”按钮被禁用且无法点击。所以我无法通过应用程序的启动加载。我怎样才能绕过这个? Click he
我试图在本地启动DSE 5.0.1 Cassandra(单节点)。 出现以下错误: CassandraDaemon.java:698 - Cannot start node if snitch's d
我刚刚安装了DataStax Community Edition,但是在尝试运行以下命令时; C:\> net start DataStax_DDC_Server 我得到以下回应: 谢谢 最佳答案 我
我使用 datastax java 驱动程序构建了一个选择查询。我使用限制选项设置限制。但是我看到另一个也可以设置的属性 setFetchSize(整数大小) 根据文档,DEFAULT_FETCH_S
刚刚在我的 Mac 上安装(从下载的 dmg 复制应用程序)DevCenter 1.6,运行安装了 jdk 8u152 的 macOs Sierra 10.12.6。应用程序加载了一个 UI(启动画面
我们可以像这样创建一个集群实例。 cluster = Cluster .builder() .addContactPoint("192.168.0.30") .withRetryPolicy(Def
我在127.0.1.1上运行自己的cassandra版本。我将rpc_address和address更改为127.0.1.1。 当我启动 Opscenter 时,系统会提示我安装agents,并通过推
我正在使用 Cassandra 1.2.5 和二级索引。当我运行准备好的语句时,没有返回数据。我有数据。另外,对于索引列,我确实有重复的值。我正在做的是根据 user_id 重新调整 video_id
我正在使用 Datastax 可爱的 cassandra java 驱动程序。我试图将所有查询字符串封装到内置访问器中以进行映射,但我需要能够设置查询的分页状态。 我发现这可以通过普通语句(Simpl
我是一名优秀的程序员,十分优秀!