数据库管理命令语法

几乎所有的管理命令都有变体。最常见的是命令中可选或可以有多个值的部分。

下面是用于描述命令所有版本的语法的摘要。这些摘要使用一些特殊字符来表示此类变体。

阅读管理命令语法

表 1. 语法摘要中的特殊字符
字符 含义 示例

|

用于指示命令的可选部分(即 or)。需要作为分组的一部分。

如果语法需要指定名称或 *,可以用 * | name 表示。

{}

用于对命令的部分进行分组。通常与 | 一起出现。

为了在语法摘要中使用 or,它需要在一个组中:{* | name}

[]

用于指示命令的可选部分。它也同时将备选项分组,当可以是其中一个备选项或什么都没有时。

如果语法中的关键字可以是单数或复数,我们可以用 GRAPH[S] 表示 S 是可选的。

...

重复模式。与紧接其前的命令部分重复相关。

逗号分隔的名称列表将是 name[, ...]

"

当特殊字符本身是语法的一部分时,我们用 " 将其括起来以表示这一点。

要在语法中包含 {,请使用 "{" { * | name } "}"。在这种情况下,您将得到 { * }{ name }

上表中需要用 " 转义的特殊字符是语法摘要中唯一需要转义的。

这是一个使用所有特殊字符的示例。它授予 READ 权限

GRANT READ
  "{" { * | property[, ...] } "}"
  ON {HOME GRAPH | GRAPH[S] { * | name[, ...] }}
    [ ELEMENT[S] { * | label-or-rel-type[, ...] }
    | NODE[S] { * | label[, ...] }
    | RELATIONSHIP[S] { * | rel-type[, ...] }]
  TO role[, ...]

请注意,此命令的语法中包含 {},它们之间可以是属性分组或字符 *。它还有多个可选部分,包括命令的实体部分,该部分是图名称后面的分组。有关图权限命令语法的详细信息,请参阅图权限命令的组成部分

然而,在为节点属性创建约束时,无需转义任何字符。这是因为 () 不是特殊字符,而 [] 表示约束名称和 IF NOT EXISTS 部分是可选的,因此不属于命令的一部分。

CREATE CONSTRAINT [constraint_name] [IF NOT EXISTS]
FOR (n:LabelName)
REQUIRE n.propertyName IS NOT NULL

数据库管理命令语法

下表涵盖了标准数据库和复合数据库。

命令 语法

SHOW DATABASE

SHOW { DATABASE[S] name | DATABASE[S] | DEFAULT DATABASE | HOME DATABASE }
[WHERE expression]
SHOW { DATABASE[S] name | DATABASE[S] | DEFAULT DATABASE | HOME DATABASE }
YIELD { * | field[, ...] } [ORDER BY field[, ...]] [SKIP n] [LIMIT n]
[WHERE expression]
[RETURN field[, ...] [ORDER BY field[, ...]] [SKIP n] [LIMIT n]]

CREATE DATABASE

CREATE DATABASE name [IF NOT EXISTS]
[TOPOLOGY n PRIMAR{Y|IES} [m SECONDAR{Y|IES}]]
[OPTIONS "{" option: value[, ...] "}"]
[WAIT [n [SEC[OND[S]]]]|NOWAIT]
CREATE OR REPLACE DATABASE name
[TOPOLOGY n PRIMAR{Y|IES} [m SECONDAR{Y|IES}]]
[OPTIONS "{" option: value[, ...] "}"]
[WAIT [n [SEC[OND[S]]]]|NOWAIT]

CREATE COMPOSITE DATABASE

CREATE COMPOSITE DATABASE name [IF NOT EXISTS]
[OPTIONS "{" "}"]
[WAIT [n [SEC[OND[S]]]]|NOWAIT]
CREATE OR REPLACE COMPOSITE DATABASE name
[OPTIONS "{" "}"]
[WAIT [n [SEC[OND[S]]]]|NOWAIT]

ALTER DATABASE

ALTER DATABASE name [IF EXISTS]
{
SET ACCESS {READ ONLY | READ WRITE} |
SET TOPOLOGY n PRIMAR{Y|IES} [m SECONDAR{Y|IES}] |
SET OPTION option value
}
[WAIT [n [SEC[OND[S]]]]|NOWAIT]
ALTER DATABASE name [IF EXISTS]
REMOVE OPTION option
[WAIT [n [SEC[OND[S]]]]|NOWAIT]

可以有多个 SET OPTIONREMOVE OPTION 子句,用于不同的选项键。

STOP DATABASE

STOP DATABASE name [WAIT [n [SEC[OND[S]]]]|NOWAIT]

START DATABASE

START DATABASE name [WAIT [n [SEC[OND[S]]]]|NOWAIT]

DROP DATABASE

DROP [COMPOSITE] DATABASE name [IF EXISTS] [RESTRICT | CASCADE ALIAS[ES]] [{DUMP|DESTROY} [DATA]] [WAIT [n [SEC[OND[S]]]]|NOWAIT]

数据库别名管理命令语法

命令 语法

SHOW DATABASE ALIAS

SHOW ALIAS[ES] [name] FOR DATABASE[S]
[WHERE expression]
SHOW ALIAS[ES] [name] FOR DATABASE[S]
YIELD { * | field[, ...] } [ORDER BY field[, ...]] [SKIP n] [LIMIT n]
[WHERE expression]
[RETURN field[, ...] [ORDER BY field[, ...]] [SKIP n] [LIMIT n]]

列出本地和远程数据库别名,可选择按别名名称过滤。

CREATE LOCAL ALIAS

CREATE ALIAS name [IF NOT EXISTS] FOR DATABASE targetName
[PROPERTIES "{" key: value[, ...] "}"]
CREATE OR REPLACE ALIAS name FOR DATABASE targetName
[PROPERTIES "{" key: value[, ...] "}"]

CREATE REMOTE ALIAS

CREATE ALIAS name [IF NOT EXISTS] FOR DATABASE targetName
AT 'url' USER username PASSWORD 'password'
[DRIVER "{" setting: value[, ...] "}"]
[PROPERTIES "{" key: value[, ...] "}"]
CREATE OR REPLACE ALIAS name FOR DATABASE targetName
AT 'url' USER username PASSWORD 'password'
[DRIVER "{" setting: value[, ...] "}"]
[PROPERTIES "{" key: value[, ...] "}"]

ALTER LOCAL ALIAS

ALTER ALIAS name [IF EXISTS] SET DATABASE
[TARGET targetName]
[PROPERTIES "{" key: value[, ...] "}"]

ALTER REMOTE ALIAS

ALTER ALIAS name [IF EXISTS] SET DATABASE
[TARGET targetName AT 'url']
[USER username]
[PASSWORD 'password']
[DRIVER "{" setting: value[, ...] "}"]
[PROPERTIES "{" key: value[, ...] "}"]

DROP ALIAS

DROP ALIAS name [IF EXISTS] FOR DATABASE

删除本地或远程数据库别名。

© . All rights reserved.