DataStore

Mostrar obsoleto

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Não criável
Não replicado

Resumo

Métodos

Métodos herdados de GlobalDataStore

Propriedades

Métodos

GetVersionAsync

Rendimentos

Essa função recupera a versão de chave especificada, bem como uma instância DataStoreKeyInfo .Um identificador de versão pode ser encontrado através de DataStore:ListVersionsAsync() ou, alternativamente, ser o identificador retornado por GlobalDataStore:SetAsync().

Parâmetros

key: string

Nome da chave para a qual a informação de versão é solicitada.Se DataStoreOptions.AllScopes for definido como verdadeiro ao acessar o armazenamento de dados através de DataStoreService:GetDataStore(), este nome de chave deve ser precedido pelo escopo original como em "scope/key".

Valor Padrão: ""
version: string

Número de versão da chave para a qual a informação de versão é solicitada.

Valor Padrão: ""

Devolução

O valor da chave na versão especificada e uma instância DataStoreKeyInfo que inclui o número de versão, data e hora em que a versão foi criada e funções para recuperar UserIds e metadados.

GetVersionAtTimeAsync

Rendimentos

Essa função recupera a versão de chave que estava ativa em um determinado momento, bem como uma instância DataStoreKeyInfo .

Parâmetros

key: string

Nome da chave para a qual a informação de versão é solicitada.Se DataStoreOptions.AllScopes for definido como verdadeiro ao acessar o armazenamento de dados através de DataStoreService:GetDataStore(), este nome de chave deve ser precedido pelo escopo original como em "scope/key".

Valor Padrão: ""
timestamp: number

timestamp do Unix em milisegundos para o qual a versão solicitada estava atual.Deve ser maior que zero.Não deve ser mais de dez minutos no futuro.

Valor Padrão: ""

Devolução

O valor da chave que estava ativo no momento especificado e uma instância DataStoreKeyInfo que inclui o número de versão, data e hora em que a versão foi criada e funções para recuperar UserIds e metadados.nil se nenhuma versão disponível estiver ativa no momento solicitado.

Amostras 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

Rendimentos

Essa função retorna um objeto DataStoreKeyPages para enumerar através de chaves de um lojade dados.Ele aceita um parâmetro opcional prefix opcional para localizar apenas chaves cujos nomes começam com o prefixo fornecido.

Se DataStoreOptions.AllScopes for definido como verdadeiro ao acessar o armazenamento de dados através de DataStoreService:GetDataStore(), as chaves serão retornadas com todos os escopos como prefixos.

Parâmetros

prefix: string

(Opcional) Prefixo para usar para localizar chaves.

Valor Padrão: ""
pageSize: number

(Opcional) Número de itens a serem retornados em cada página.Se nenhum valor for dado, o motor envia um valor padrão de 0 para o serviço de armazenamento de dados na web, que, por sua vez, padrãoiza 50 itens por página.

Valor Padrão: 0
cursor: string

(Opcional) Cursor para continuar a iteração.

Valor Padrão: ""
excludeDeleted: boolean

(Opcional) Excluir chaves excluídas de serem retornadas.

Quando ativado, os ListKeys verificarão até 512 chaves.Se todas as chaves selecionadas forem excluídas, então retornará uma lista vazia com um cursor para continuar a iteração.

Valor Padrão: false

Devolução

Uma instância DataStoreKeyPages que enumera as chaves como DataStoreKey instâncias.

ListVersionsAsync

Rendimentos

Essa função lista versões da chave especificada em ordem ascendente ou descendente especificada por um parâmetro Enum.SortDirection.Pode opcionalmente filtrar as versões retornadas por data de registro mínima e máxima.

Parâmetros

key: string

Nome da chave para as versões a listar.Se DataStoreOptions.AllScopes for definido como verdadeiro ao acessar o armazenamento de dados através de DataStoreService:GetDataStore(), este nome de chave deve ser precedido pelo escopo original como em "scope/key".

Valor Padrão: ""
sortDirection: Enum.SortDirection

(Opcional) Enum especificando ordem de classificação ascendente ou descendente.

Valor Padrão: "Ascending"
minDate: number

(Opcional) Unix timestamp em milisegundos após o qual as versões devem ser listadas.

Valor Padrão: 0
maxDate: number

(Opcional) Unix timestamp em milisegundos até o qual as versões devem ser listadas.

Valor Padrão: 0
pageSize: number

(Opcional) Número de itens a serem retornados em cada página.Se nenhum valor for dado, o motor envia um valor padrão de 0 para o serviço de armazenamento de dados na web, que, por sua vez, padrãoiza para 1024 itens por página.

Valor Padrão: 0

Devolução

Uma instância DataStoreVersionPages que enumera todas as versões da chave como DataStoreObjectVersionInfo instâncias.

Amostras 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

()
Rendimentos

Essa função exclui permanentemente a versão especificada de uma chave. Os identificadores de versão podem ser encontrados através de DataStore:ListVersionsAsync() .

Ao contrário de GlobalDataStore:RemoveAsync(), esta função não cria uma nova versão de "lápide" e o valor removido não pode ser recuperado mais tarde.

Parâmetros

key: string

Nome da chave para a qual uma versão deve ser removida.Se DataStoreOptions.AllScopes for definido como verdadeiro ao acessar o armazenamento de dados através de DataStoreService:GetDataStore(), este nome de chave deve ser precedido pelo escopo original como em "scope/key".

Valor Padrão: ""
version: string

Número de versão da chave para remover.

Valor Padrão: ""

Devolução

()

Eventos