gpt4 book ai didi

javascript - 在 Neo4j 中创建批量节点时如何生成唯一的 UUID

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:42:49 30 4
gpt4 key购买 nike

Neo4j Bulk Insert 正在获取相同的 UUID 值/获取相同的返回值。

/**
* @method createAlbumAndTracks
* @param album
* @param tracks
* @returns {any}
*/
createAlbumAndTracks(album:any, tracks:any[]):any {
const query = `
UNWIND {trackList} as track
MERGE (a:Albums ${insertQuery(album)})
CREATE (t:Tracks)
SET
t = track,
t.id = '${uuid()}', // unique UUID expected
t.created = timestamp()
MERGE (a)-[r:ALBUM_TRACKS]->(t)
RETURN t`;

return db.run(query, Object.assign(album, {trackList: tracks}));
}

t.id = '${uuid()}' is getting the same value though it should be an unique UUID. How to invoke the function each time a new node is created?

最佳答案

因为您只创建了一次查询,然后您为每个数组项创建了一个轨道。

您应该将 uuid 添加到您的轨道列表中(作为对象)

 tracklist = [{track:"Track", uuid:uuid()},....]

然后在查询中使用 track.tracktrack.uuid

关于javascript - 在 Neo4j 中创建批量节点时如何生成唯一的 UUID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38026052/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com