2016-03-23 1 views
0

Я пытаюсь добавить встроенную карту для записи:Как добавить встроенную карту для записи с SQL в OrientDb

UPDATE #12:6941 set fieldWithEmbeddedMap ={ 
    "1": { 
     "@type": "d", 
     "@version": 0, 
     "@class": "myClass", 
     "myFiled": "ok" 
    }, 
    "2": { 
     "@type": "d", 
     "@version": 0, 
     "@class": "myClass", 
     "myFiled": "ok" 
    } 
} 

Но результат

{"1":"#17:9","2":"#17:10"} 

Что правильный синтаксис для установки внедренного поля?

+0

привет Zella нужна ли встроенная карта для использования класса? myClass – wolf4ood

+0

@ wolf4ood в основном я положил карту с помощью java 'Map ', поэтому поле вставляет правильно (оно contatins "@class"). Я не могу обновить поле в студии – zella

ответ

0

Я создал класс с именем свойства (строка) и fieldWithEmbeddedMap (embeddedMap)

enter image description here

У меня есть создать запись типа Class2

insert into class2(name) values ("Alessandro") // 14:0 

и после того, как я использовал ваш код

UPDATE #14:0 set fieldWithEmbeddedMap ={ 
    "1": { 
     "@type": "d", 
     "@version": 0, 
     "@class": "myClass", 
     "myFiled": "ok" 
    }, 
    "2": { 
     "@type": "d", 
     "@version": 0, 
     "@class": "myClass", 
     "myFiled": "ok" 
    } 
} 

Результат следующая

enter image description here

Надеется, что это помогает.

EDIT

Java код

Map<String, Object> myEntries = new HashMap<String, Object>(); 
myEntries.put("key1",1); 
myEntries.put("key2",2); 
myEntries.put("key3",3); 

ODocument doc = new ODocument("Test"); 
doc.field("mymap", myEntries, OType.EMBEDDEDMAP); 
doc.save(); 

От студии

enter image description here

enter image description here

+0

@zella Это то, чего вы хотели достичь? –

+0

Да, это работает. Я не создал никакой схемы, я только вставляю документы с помощью 'doc.field (« fieldWithEmbeddedMap », map, OType.EMBEDDEDMAP);« Я не уверен - правильно, что в студии я вижу поле «внедренным», а не "embeddedMap" (в режиме без схемы)? – zella

+0

@zella Я отредактировал мой ответ –

Смежные вопросы