2016-09-13 10 views
0

OrientDBに関する質問があります。ステートメントの場合OrientDBネストされたJSONの挿入

INSERT INTO Account CONTENT 
{ name : 'Luca', 
    vehicles : { 
    @class : 'Vehicle', 
    type : 'Car', 
    model : 'Maserati', 
    isItTrue: false 
    } 
} 

結果(スクリーンショットを参照)が表示されますが、クラス/テーブル 'Vehicle'にはエントリが含まれていません。これは有効な結果ですか? 私はいくつかの値が自動的に 'Vehicle'に書き込まれ、 'Account'に接続されることを期待しました。 「アカウント」の列「車両」のみにJSONデータが含まれています。

ありがとうございます。

敬具 カロ

Screenshot OrientDB

答えて

2

クエリを使用すると、アカウントと車にいくつかのデータを挿入したい場合は、アカウントに埋め込まれたデータを挿入しているが、あなたは別のクエリで、その後、もしそれを行う必要がありますそれらをエッジで接続することができます。それでもながら、単一のINSERT /トランザクションで結果を希望あなたがエッジを作成するために見ていない場合は、

また
create class Account extends v 
create class Vehicle extends v 
create class owns extends e 

create property Account.name String 
create property Vehicle.type String 
create property Vehicle.model String 
create property Vehicle.isItTrue BOOLEAN 

insert into Account(name) values ("Luca") 
insert into Vehicle(type, model, isItTrue) values ("Car", "Maserati", false) 

create edge owns from (select from Account where name = "Luca") to (select from Vehicle where model = "Maserati") 

enter image description here

0

とあなただけのドキュメントからのリンクをドキュメント化する、以下のあなたを与えるだろう。例を参照してください。リンクされたレコード

create class Account 
create class Vehicle 
create property Account.vehicles embedded Vehicle 

INSERT INTO Account set name = "luca", vehicles = [ { 
    "@type": "d", 
    "@class" : "Vehicle", 
    "type" : "Car", 
    "model" : "Maserati", 
    "isItTrue": false 
    }] 

enter image description here

のためにあなたのJSONの構造を維持
関連する問題