使用Go更新Apache Age表中的记录时出现不支持的操作错误

tvz2xvvm  于 2023-06-03  发布在  Go
关注(0)|答案(2)|浏览(152)

我正在开发一个Go应用程序,需要更新Apache Age表中的记录。执行更新操作时,我遇到错误“不支持的操作”。
错误信息:在对Apache Age表执行更新查询时,我遇到以下错误消息:“不支持的操作。”
预期行为:预期的结果是成功地更新ApacheAge表中的记录。

rryofs0p

rryofs0p1#

请分享导致此错误的更新操作代码。

但通常要确保代码连接到PostgreSQL数据库并加载AGE扩展。然后将search_path设置为ag_catalog
这是更新节点属性的一般示例,标签为Person,属性名称设置为“Alice”。更新将节点的age属性设置为30

updateQuery := `MATCH (n:Person {name: 'Alice'}) SET n.age = 30`

result, err := age.ExecCypher(db, updateQuery)

if err != nil {
        panic(err)
}
ibps3vxo

ibps3vxo2#

您需要检查是否满足更新查询的所有要求。例如,我在下面写一个更新查询:

SELECT * 
FROM cypher('graph_name', $$
MATCH (v {name: 'Andres'})
SET v.surname = 'Taylor'
$$) as (v agtype);

如果你有一个顶点有name和surname的属性,这个查询会很好地工作,而如果你没有name和surname的属性,那么这将抛出一个错误。
我正在添加一个删除节点属性的查询。

SELECT * 
FROM cypher('graph_name', $$
MATCH (v {name: 'Andres'})
SET v.name = NULL
RETURN v
$$) as (v agtype);

将您的语法与此语法匹配并更新您的查询,它就会工作。

相关问题