Skip to content

DataStoreRemoveOptions ​

DataStore:RemoveAsync 的可选参数类型,可控制删除时是否返回键元信息、是否永久删除,以及是否要求当前版本匹配指定前置版本。

概览 ​

DataStore:RemoveAsync 的可选参数类型,可控制删除时是否返回键元信息、是否永久删除,以及是否要求当前版本匹配指定前置版本。

可通过 DataStoreRemoveOptions.New() 构造

代码示例 ​

在文档沙盒中永久删除并返回 KeyInfo

lua
-- @runtime server
local Task = game:GetService("Task")
local dataStoreService = game:GetService("DataStoreService")
local dataStore = dataStoreService:GetDataStore("DocumentationSandbox")
local options = DataStoreRemoveOptions.New()
options.PermanentlyRemove = true
options.WithKeyInfo = true
Task:Spawn(function()
    -- 仅对已确认可清理的文档沙盒键执行永久删除
    local value, keyInfo = dataStore:RemoveAsync("cleanup_demo", options)
    print("删除值:", value, "版本:", keyInfo and keyInfo.Version)
end)

属性 ​

名称类型默认值说明
WithKeyInfoBool-是否在返回结果中附带键信息(version, created/modified time, UserIds, Metas 等键元数据)。
PermanentlyRemoveBool-控制是否永久删除键,而非软删除(标记为已删除但保留版本历史)。
DependPrevVersionString-指定一个版本号字符串,仅当要删除的键的当前版本与此版本号一致时才执行删除操作,用于实现乐观锁机制。