use*_*und 16 cql cassandra cql3 datastax
我试图从这里运行以下示例
CREATE TYPE address (
street text,
city text,
zip int
);
CREATE TABLE user_profiles (
login text PRIMARY KEY,
first_name text,
last_name text,
email text,
addresses map<text, address>
);
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试创建user_profiles表时,我收到以下错误:
InvalidRequest: code=2200 [Invalid query] message="Non-frozen collections are not
allowed inside collections: map<text, address>
Run Code Online (Sandbox Code Playgroud)
有关为什么会发生这种情况的任何想法?
Aar*_*ron 15
我正在运行2.1.8,我收到相同的错误消息.要解决此问题,您需要frozen关键字:
CREATE TABLE user_profiles (
login text PRIMARY KEY,
first_name text,
last_name text,
email text,
addresses map<text, frozen <address>>
);
Run Code Online (Sandbox Code Playgroud)
冻结是UDT(现在)必需的,因为它将它们序列化为单个值.您可以使用类似的更好的示例,即用户定义类型文档中的示例.试一试.
Soi*_*oid 10
当我在cassandra地图中错误地使用"string"而不是"text"时,我收到此消息,如:
mymap map<bigint, string>
Run Code Online (Sandbox Code Playgroud)
我从谷歌跟踪这个stackoverflow线程,我认为这些信息可以为他们节省几分钟的时间.
| 归档时间: |
|
| 查看次数: |
9266 次 |
| 最近记录: |