gpt4 book ai didi

sparql - 乐观锁定或条件更新

转载 作者:行者123 更新时间:2023-12-02 01:09:11 28 4
gpt4 key购买 nike

我想实现诸如 Optimistic vs. Pessimistic locking 中提到的“乐观锁定”之类的东西

我有以下数据

:foo 
:hasProp 'bar';
:hasVersion '3'^^xsd:nonNegativeInteger
.

session 查询此数据并将信息保存在内存中。
然后它想要发布更新。

我只希望更新成功,当传递的版本为“3”时,这意味着自从 session 读取 :foo 以来没有发生更新.

当传递的版本为 != 3 时,有没有办法使更新查询失败?但否则成功并更新 :hasVersion'4'^^xsd:nonNegativeInteger例如 :hasPropbaz ?

最佳答案

“失败”仅表示没有数据匹配,即您可以使用 FILTER .其余的,只需 INSERTDELETE相应的数据:

PREFIX : <YOUR_NAMESPACE_HERE>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>

INSERT {
?s :hasProp "baz" .
?s :hasVersion "4"^^xsd:nonNegativeInteger
}
DELETE {
?s :hasProp "bar" .
?s :hasVersion ?v
}
WHERE{
?s :hasVersion ?v
FILTER(?v = "3"^^xsd:nonNegativeInteger)
}

关于sparql - 乐观锁定或条件更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45944181/

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