DataStore

Mostrar obsoleto

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

No creable
No replicado

Resumen

Métodos

Métodos heredados de GlobalDataStore

Propiedades

Métodos

GetVersionAsync

Proporciona

Esta función recupera la versión de clave especificada, así como una instancia DataStoreKeyInfo .Un identificador de versión se puede encontrar a través de DataStore:ListVersionsAsync() o alternativamente ser el identificador devuelto por GlobalDataStore:SetAsync().

Parámetros

key: string

Nombre de clave para la cual se solicita la información de versión.Si DataStoreOptions.AllScopes se estableció en verdad al acceder al almacén de datos a través de DataStoreService:GetDataStore(), este nombre de clave debe precederse con el alcance original como en "scope/key".

Valor predeterminado: ""
version: string

Número de versión de la clave para la que se solicita la información de versión.

Valor predeterminado: ""

Devuelve

El valor de la clave en la versión especificada y una instancia DataStoreKeyInfo que incluye el número de versión, la fecha y la hora en que se creó la versión y las funciones para recuperar UserIds y metadatos.

GetVersionAtTimeAsync

Proporciona

Esta función recupera la versión de clave que era actual en un momento dado, así como una instancia DataStoreKeyInfo .

Parámetros

key: string

Nombre de clave para la cual se solicita la información de versión.Si DataStoreOptions.AllScopes se estableció en verdad al acceder al almacén de datos a través de DataStoreService:GetDataStore(), este nombre de clave debe precederse con el alcance original como en "scope/key".

Valor predeterminado: ""
timestamp: number

Sello de tiempo Unix en milisegundos para el cual la versión solicitada era actual.Debe ser mayor que cero.No debe superar los diez minutos en el futuro.

Valor predeterminado: ""

Devuelve

El valor de la clave que era actual en el momento especificado y una instancia DataStoreKeyInfo que incluye el número de versión, la fecha y la hora en que se creó la versión y las funciones para recuperar UserIds y metadatos.nil

Muestras de código

The following code sample retrieves data store key versions using timestamps.

Retrieving DataStore Versions by Time

local DataStoreService = game:GetService("DataStoreService")
local dataStore = DataStoreService:GetDataStore("DataStore")
local key = "key-123"
function setData(data)
local success, result = pcall(function()
dataStore:SetAsync(key, data)
end)
if not success then
warn(result)
end
end
function getVersionAtTime(timestamp)
local success, result, keyInfo = pcall(function()
return dataStore:GetVersionAtTimeAsync(key, timestamp.UnixTimestampMillis)
end)
if success then
if result == nil then
print("No version found at time")
else
print(result, keyInfo.Version)
end
else
warn(result)
end
end
-- Previously ran at 2024/12/02 6:00 UTC
setData("version 1")
-- Previously ran at 2024/12/02 9:00 UTC
setData("version 2")
-- Prints "No version found at time"
local time1 = DateTime.fromUniversalTime(2024, 12, 02, 05, 00)
getVersionAtTime(time1)
-- Prints "version 1 <version>"
local time2 = DateTime.fromUniversalTime(2024, 12, 02, 07, 00)
getVersionAtTime(time2)
-- Prints "version 2 <version>"
local time3 = DateTime.fromUniversalTime(2024, 12, 02, 10, 00)
getVersionAtTime(time3)

ListKeysAsync

Proporciona

Esta función devuelve un objeto DataStoreKeyPages para enumerar a través de las claves de un tiendade datos.Acepta un parámetro opcional prefix para localizar solo las claves cuyos nombres comienzan con el prefijo proporcionado.

Si DataStoreOptions.AllScopes se estableció en verdad al acceder al almacén de datos a través de DataStoreService:GetDataStore(), las claves se devolverán con todos los alcances como prefijos.

Parámetros

prefix: string

(Opcional) Prefijo para usar para localizar claves.

Valor predeterminado: ""
pageSize: number

(Opcional) Número de elementos a devolver en cada página.Si no se proporciona ningún valor, el motor envía un valor predeterminado de 0 al servicio de almacén de datos web, que a su vez predetermina 50 artículos por página.

Valor predeterminado: 0
cursor: string

(Opcional) cursor para continuar la iteración.

Valor predeterminado: ""
excludeDeleted: boolean

(Opcional) Excluir las llaves eliminadas de ser devueltas.

Cuando se habilita, ListKeys comprobará hasta 512 claves.Si se eliminan todas las teclas seleccionadas, devolverá una lista vacía con un cursor para continuar la iteración.

Valor predeterminado: false

Devuelve

Una instancia DataStoreKeyPages que enumera las claves como DataStoreKey instancias.

ListVersionsAsync

Proporciona

Esta función enumera versiones de la clave especificada en orden ascendente o descendente especificado por un parámetro Enum.SortDirection.Puede filtrar opcionalmente las versiones devueltas por el tiempo de registro mínimo y máximo.

Parámetros

key: string

Nombre de clave para las versiones para listar.Si DataStoreOptions.AllScopes se estableció en verdad al acceder al almacén de datos a través de DataStoreService:GetDataStore(), este nombre de clave debe precederse con el alcance original como en "scope/key".

Valor predeterminado: ""
sortDirection: Enum.SortDirection

(Opcional) Enum especificando la orden de clasificación ascendente o descendente.

Valor predeterminado: "Ascending"
minDate: number

(Opcional) Un timestamp de Unix en milisegundos después de los cuales se deben enumerar las versiones

Valor predeterminado: 0
maxDate: number

(Opcional) Un timestamp de Unix en milisegundos hasta el cual se deben enumerar las versiones.

Valor predeterminado: 0
pageSize: number

(Opcional) Número de elementos a devolver en cada página.Si no se proporciona ningún valor, el motor envía un valor predeterminado de 0 al servicio de almacén de datos web, que a su vez predetermina 1024 artículos por página.

Valor predeterminado: 0

Devuelve

Una instancia DataStoreVersionPages que enumera todas las versiones de la clave como DataStoreObjectVersionInfo instancias.

Muestras de código

The following code sample retrieves all versions after a specified starting time, sorted in ascending order.

Retrieving DataStore Versions With A Date Filter

local DataStoreService = game:GetService("DataStoreService")
local experienceStore = DataStoreService:GetDataStore("PlayerExperience")
local time = DateTime.fromUniversalTime(2020, 10, 09, 01, 42)
local listSuccess, pages = pcall(function()
return experienceStore:ListVersionsAsync("User_1234", nil, time.UnixTimestampMillis)
end)
if listSuccess then
local items = pages:GetCurrentPage()
for key, info in pairs(items) do
print("Key:", key, "; Version:", info.Version, "; Created:", info.CreatedTime, "; Deleted:", info.IsDeleted)
end
end

RemoveVersionAsync

()
Proporciona

Esta función elimina permanentemente la versión especificada de una clave. Los identificadores de versión se pueden encontrar a través de DataStore:ListVersionsAsync() .

A diferencia de GlobalDataStore:RemoveAsync(), esta función no crea una nueva versión de "lápida" y el valor eliminado no se puede recuperar más tarde.

Parámetros

key: string

Nombre de clave para la cual se eliminará una versión.Si DataStoreOptions.AllScopes se estableció en verdad al acceder al almacén de datos a través de DataStoreService:GetDataStore(), este nombre de clave debe precederse con el alcance original como en "scope/key".

Valor predeterminado: ""
version: string

Número de versión de la clave para eliminar.

Valor predeterminado: ""

Devuelve

()

Eventos