本文介绍管理图中属性的语句。
显示属性
获取当前图中点Schema User
的属性信息:
SHOW NODE User PROPERTY
获取当前图中边Schema Joins
的属性信息:
SHOW EDGE Joins PROPERTY
属性信息展示在不同表格中:
- 点属性:
_nodeProperty
包含所有点属性,_nodeProperty_shard_<id>
包含存储在Shard<id>
中的点属性。 - 边属性:
_edgeProperty
包含所有边属性,_edgeProperty_shard_<id>
包含存储在Shard<id>
中的边属性。
嬴图Manager中只显示
_nodeProperty
和_edgeProperty
表。
表中包含以下字段:
字段 |
描述 |
---|---|
name |
属性名称 |
type |
属性值类型 |
lte |
属性是否已加载至分片内存以加速查询 |
read |
当前数据库用户能否读取该属性,1 表示允许,0 表示禁止 |
write |
当前数据库用户能否写入该属性,1 表示允许,0 表示禁止 |
schema |
属性关联的Schema |
description |
属性的描述 |
encrypt |
加密属性的方法 |
创建属性
ALTER NODE
或ALTER EDGE
语句可用来在当前图中为一个或全部点或边Schema创建属性。
<add property statement> ::=
"ALTER" < "NODE" | "EDGE" > { <schema name> | "*" } "ADD PROPERTY" <property types>
<property types> ::=
"{" <property type> [ { "," <property type> }... ] "}"
<property type> ::=
<property name> <property value type> [ <property description> ]
详情
整数类属性
支持的整数类属性值类型包括int32
、uint32
、int64
和uint64
。
ALTER NODE user ADD PROPERTY {age uint32}
小数类属性
支持的小数类属性值类型包括float
、double
和decimal
。
ALTER EDGE links ADD PROPERTY {distance float, weight decimal(10,5)}
文本类属性
支持的文本类属性值类型包括string
和text
,其中string
是默认类型。若需将属性定义为string
类型,可在属性创建过程中省略类型指定过程。
ALTER NODE post ADD PROPERTY {title string, content text}
时间类属性
支持的时间类属性值类型包括datetime
和timestamp
。
ALTER NODE post ADD PROPERTY {createdOn timestamp, publishedOn datetime}
布尔类属性
支持的布尔类属性值类型为bool
。
ALTER NODE city ADD PROPERTY {isCapital bool}
空间类属性
支持的空间类属性值类型为point
。
ALTER NODE city ADD PROPERTY {position point}
列表类属性
支持的列表类属性值类型包括子类型int32
、int64
、uint32
、uint64
、float
、double
、string
、text
、datetime
和timestamp
。
ALTER NODE user ADD PROPERTY {interests list<string>}
为所有schema创建属性
为所有边schema创建属性time
:
ALTER EDGE * ADD PROPERTY {time datetime}
重命名属性
ALTER NODE
或ALTER EDGE
语句可用来重命名当前图中与一个点或边Schema关联的属性。
将当前图中User
点的属性name
重命名为username
:
ALTER NODE User name RENAME TO username
将当前图中Follows
边的属性createdOn
重命名为startDate
:
ALTER EDGE Follows createdOn RENAME TO startDate
修改属性描述
ALTER NODE
或ALTER EDGE
语句可用来修改当前图中与一个点或边Schema关联的属性的描述。
更新当前图中User
点属性name
的描述:
ALTER NODE User name COMMENT "Contains 5 to 64 characters"
更新当前图中Follows
边属性createdOn
的描述:
ALTER EDGE Follows createdOn COMMENT "When the relationship is established"
删除属性
ALTER NODE
或ALTER EDGE
语句可用来从当前图中删除与一个或全部点或边Schema关联的属性。属性删除后,所有相关数据都将删除,其中包括属性值以及关联的索引、全文索引和加载到内存中的值。
删除user
点的属性name
和age
:
ALTER NODE user DROP PROPERTY name, age
删除links
边的属性time
:
ALTER EDGE links DROP PROPERTY time
删除所有点的属性location
:
ALTER NODE * DROP PROPERTY location