是否可以通过 pgsql 和 neo4j 转储关闭扩展插入?
Is it possible to turn off extended insert by pgsql and neo4j dumps?
我在这里读到,如果我关闭扩展插入,它会使版本化转储更容易阅读。这是一个 MySQL 功能。是否可以通过 PgSQL 和 Neo4j 数据库执行相同的操作?
根据这篇文章:https://viget.com/extend/backup-your-database-in-git 进行完整转储并在 git 中对它们进行版本化是一个很好的做法。我与其他人讨论过这个问题,根据他们的说法,使用 增量备份 是一个更好的解决方案。由于pgsql和neo4j都支持增量备份,所以我真的不需要这个扩展的插入功能。
我猜 Neo4j 中最接近 "extended inserts" 的功能是 LOAD CSV
命令,参见 http://neo4j.com/docs/stable/cypherdoc-importing-csv-files-with-cypher.html。
另一种方法是将您的数据作为带有列表值的参数传递并使用 UNWIND
:
UNWIND {values} AS v
CREATE (:WhateverLabel {value: v})
这里的参数是:
{ "values": ["val1", "val2", "val3"] }
您甚至可以使用 UNWIND
从 JSON 导入数据,请参阅 http://neo4j.com/blog/cypher-load-json-from-url/。
我在这里读到,如果我关闭扩展插入,它会使版本化转储更容易阅读。这是一个 MySQL 功能。是否可以通过 PgSQL 和 Neo4j 数据库执行相同的操作?
根据这篇文章:https://viget.com/extend/backup-your-database-in-git 进行完整转储并在 git 中对它们进行版本化是一个很好的做法。我与其他人讨论过这个问题,根据他们的说法,使用 增量备份 是一个更好的解决方案。由于pgsql和neo4j都支持增量备份,所以我真的不需要这个扩展的插入功能。
我猜 Neo4j 中最接近 "extended inserts" 的功能是 LOAD CSV
命令,参见 http://neo4j.com/docs/stable/cypherdoc-importing-csv-files-with-cypher.html。
另一种方法是将您的数据作为带有列表值的参数传递并使用 UNWIND
:
UNWIND {values} AS v
CREATE (:WhateverLabel {value: v})
这里的参数是:
{ "values": ["val1", "val2", "val3"] }
您甚至可以使用 UNWIND
从 JSON 导入数据,请参阅 http://neo4j.com/blog/cypher-load-json-from-url/。