我正在尝试编写一个导入程序脚本,该脚本将获取MySQL结果集,并在我的Neo4J数据库中添加节点和关系。为了简化,我的结果集有以下字段:
- application_id
- 金额
- 应用程序日期
- account_id
我想创建一个带有Application
标签和application_id
、amount
、application_date
字段的节点,以及另一个具有Account
标签和account_id
字段的节点以及它们之间的关系。
我的SQL查询来自应用程序表,所以我不怕那里有重复,但account_id可能会出现不止一次,我显然不想为此创建多个节点。
我正在使用neography(但如果有更简单的东西,我愿意切换)。实现这一目标的最佳(最简单)方法是什么?我的脚本会在数据库启动之前删除它,这样就不会有剩余的东西需要处理了。
我应该在使用create_unique_node
之前创建索引吗
我想我可以用"MATCH..CRAETE UNIQUE.."在密码中做我想做的事,这在新术中相当于什么?我不明白index_name
是如何进入方程式的
我应该还是不应该定义Account的约束?
非常感谢,这是我第一次使用图形数据库,所以如果我错过了这里的概念,我很抱歉。。
根据您的描述,您似乎应该使用Neo4j 2.0附带的约束:http://docs.neo4j.org/chunked/milestone/query-constraints.html#constraints-创建唯一性约束
对(account:account)资产帐户创建约束。account_id是唯一的
然后您可以使用MATCH。。为所有插入项创建UNIQUE子句。您可以使用neography提交密码查询,请参阅此处的示例:https://github.com/maxdemarzi/neography/wiki/Scripts-and-queries