命令 - CREATE LINK

建立文档类型记录之间的连接。

语法

CREATE LINK <link-name> FROM <source-class>.<source-property> TO <target-class>.<target-property>
  • <link-name> 定义连接属性的逻辑名称。如果不写,使用<target-property>字段。
  • <source-class> 定义连接的源类。
  • <source-property> 定义连接的源属性。
  • <target-class> 定义连接的目标类。
  • <target-property> 定义连接的目标属性。

例子

  • 创建1-n的连接:

    orientdb> CREATE LINK comments FROM Comments.!PostId TO Posts.Id INVERSE
    

连接在关系数据库中非常有用。在关系世界中,数据库把关系解析成外键。例如,上面的例子,Post 1 ---> * Comment

关系数据库中,类就是表:

reldb> SELECT * FROM Post;

+----+----------------+
| Id | Title          |
+----+----------------+
| 10 | NoSQL movement |
| 20 | New OrientDB   |
+----+----------------+
2 rows in (0.01 sec)

reldb> SELECT * FROM Comment;

+----+--------+--------------+
| Id | PostId | Text         |
+----+--------+--------------+
|  0 |   10   | First        |
|  1 |   10   | Second       |
| 21 |   10   | Another      |
| 41 |   20   | First again  |
| 82 |   20   | Second Again |
+----+--------+--------------+
5 rows in sec (0.03 sec)

OrientDB中,对象模型中直接关系。可以从Post找到Comment,反向不行。所以,如果希望反向找,需要建立反向连接INVERSE.