OrientDB插入记录

OrientDB是一个NoSQL数据库,可以存储文档和面向图形的数据。 NoSQL数据库不包含任何表,那么要如何将数据作为记录插入?在这里,您可以以类,属性,顶点和边的形式查看表数据,类表就像表,属性就像表中的文件。

可以在OrientDB中使用模式定义所有这些实体。 属性数据可以被插入到一个类中。 插入命令在数据库模式中创建一条新记录。 记录可以无模式或遵循一些指定的规则。

以下语句是“插入记录”命令的基本语法。

INSERT INTO [class:]<class>|cluster:<cluster>|index:<index> 
   [(<field>[,]*) VALUES (<expression>[,]*)[,]*]| 
   [SET <field> = <expression>|<sub-command>[,]*]| 
   [CONTENT {<JSON>}] 
   [RETURN <expression>]  
   [FROM <query>]

以下是有关上述语法中选项的详细信息。

  • SET - 定义每个字段和值。
  • CONTENT - 定义JSON数据以设置字段值。 这是可选的。
  • RETURN - 定义要返回的表达式而不是插入的记录数。 最常见的用例是 -
    • @rid - 返回新记录的记录ID。
    • @this - 返回整个新记录。
  • FROM - 想要插入记录或结果集的位置。

示例

假设有一个包含以下字段和类型的Customer表。

编号 字段名称 描述
1 ID Integer
2 Name String
3 Age Integer

可以通过执行以下命令来创建Schema(表)。

CREATE DATABASE PLOCAL:/opt/orientdb/databases/sales 
CREATE CLASS Customer 
CREATE PROPERTY Customer.id integer 
CREATE PROPERTY Customer.name String 
CREATE PROPERTY Customer.age integer

执行完所有命令后,将得到具有idnameage字段的一个Customer表。 可以通过在Customer表中执行select查询来检查表中的数据。

OrientDB提供了插入记录的不同方法。 考虑下面的包含示例记录的Customer表。

编号 名字 年龄
1 Satish 25
2 Krishna 26
3 Kiran 29
4 Javeed 21
5 Raja 29

以下命令将第一条记录插入到Customer表中。

INSERT INTO Customer (id, name, age) VALUES (01,'satish', 25)

如果上述命令成功执行,您将得到以下输出。

Inserted record 'Customer#11:0{id:1,name:satish,age:25} v1' in 0.069000 sec(s).

以下命令将第二条记录插入到Customer表中。

INSERT INTO Customer SET id = 02, name = 'krishna', age = 26

如果上述命令成功执行,您将得到以下输出。

Inserted record 'Customer#11:1{id:2,age:26,name:krishna} v1' in 0.005000 sec(s).

以下命令将第三条记录插入Customer表中。

INSERT INTO Customer CONTENT {"id": "03", "name": "kiran", "age": "29"}

如果上述命令成功执行,您将得到以下输出。

Inserted record 'Customer#11:2{id:3,name:kiran,age:29} v1' in 0.004000 sec(s).

以下命令将插入到Customer表中的下两条记录。

INSERT INTO Customer (id, name, age) VALUES (04,'javeed', 21), (05,'raja', 29)

如果上述命令成功执行,您将得到以下输出。

Inserted record '[Customer#11:3{id:4,name:javeed,age:21} v1,
Customer#11:4{id:5,name:raja,age:29} v1]' in 0.007000 sec(s).

可以通过执行以下命令来检查是否插入了所有这些记录。

SELECT * FROM Customer

如果上述命令成功执行,您将得到以下输出。

----+-----+--------+----+-------+---- 
#   |@RID |@CLASS  |id  |name   |age  
----+-----+--------+----+-------+---- 
  |#11:0|Customer|1   |satish |25   
  |#11:1|Customer|2   |krishna|26   
  |#11:2|Customer|3   |kiran  |29 
  |#11:3|Customer|4   |javeed |21 
  |#11:4|Customer|5   |raja   |29   
----+-----+--------+----+-------+----

上一篇:OrientDB删除数据库

下一篇:OrientDB查询记录

关注微信小程序
程序员编程王-随时随地学编程

扫描二维码
程序员编程王

扫一扫关注最新编程教程