sql - 如何使用 SQL 更新将列表或映射值放入嵌入映射中?

标签 sql database orientdb

我有一个类 Item,它具有 EMBEDDEDMAP 类型的属性 map

INSERT INTO Item (map) VALUES ({'listin': []})

此 INSERT 使用 @rid = #22:0 和 map = {"listin":[0]} 创建一条新记录。
现在我想使用 SQL UPDATE 将新条目放入 map 属性中.

UPDATE #22:0 PUT map = 'strVal', 'abcdef'

StringInteger 类型的新条目放入 map 中效果很好。
结果:map = {"listin":[0],"strVal":"abcdef"}

当我尝试对列表或 map 执行相同操作时,出现异常。

UPDATE #22:0 PUT map = 'listVal', []  
java.lang.StringIndexOutOfBoundsException: String index out of range: -1  

UPDATE #22:0 PUT map = 'mapVal', {}  
java.lang.StringIndexOutOfBoundsException: String index out of range: -1

我关注了OrientDB Wiki ,但没有将集合条目放入 map 的示例。
我正在使用 OrientDB Studio(社区版 v1.7-rc2)来执行查询。

为什么这些更新会引发异常?
制定查询的正确方法是什么?

最佳答案

尝试使用我们修复了此问题的 OrientDB 1.7-SNAPSHOT。

关于sql - 如何使用 SQL 更新将列表或映射值放入嵌入映射中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23373928/

相关文章:

c# - 编译器错误消息 : CS1519: Invalid token '=' in class, 结构或接口(interface)成员声明

mysql - 银条东方数据库

mysql子字符串只获取字符

php - jquery根据另一个输入值自动完成sql查询列表

MySQL 嵌套连接以及对非嵌套表字段的引用

java - 尝试对 Oracle DB 进行查询时出现异常 java.sql.SQLSyntaxErrorException : Schema 'SA' does not exist,

mysql - 如果 var 等于,则进行一个查询或其他查询

sql - 如何查找和更新包含上标字符的列

java - 带有嵌入式对象的 OrientDB POJO 映射

java - OGraphDatabase ClassNotFoundException OrientDB 1.7.8