DataStore
*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.
Veja Armazenamento de Dados.
Tóm Tắt
Phương Pháp
Recupera a versão de chave especificada.
Recupera a versão da chave que estava atual em um determinado momento.
- ListKeysAsync(prefix : string,pageSize : number,cursor : string,excludeDeleted : bool):DataStoreKeyPages
Retorna um objeto DataStoreKeyPages para listar através das chaves de um armazenamento de dados.
- ListVersionsAsync(key : string,sortDirection : Enum.SortDirection,minDate : number,maxDate : number,pageSize : number):DataStoreVersionPages
Contém todas as versões de uma chave.
Exclui permanentemente a versão especificada de uma chave.
Trả lại giá trị của một chìa khóa trong một lưu trữ dữ liệu được xác định và một DataStoreKeyInfo ví dụ / trường hợp.
- IncrementAsync(key : string,delta : number,userIds : Array,options : DataStoreIncrementOptions):Variant
Tăng giá trị của một chìa khóa bằng số lượng cung cấp (cả hai phải là số lượng).
Loại bỏ chìa khóa được chỉ định trong khi giữ một phiên bản truy cập được.
Điều chỉnh giá trị của cửa hàng dữ liệu cho giá trị đã được cung chìa khóa.
Cập nhật giá trị của một chìa khóa bằng một giá trị mới từ hàm chuỗi đã định.
Thuộc Tính
Phương Pháp
GetVersionAsync
Essa função recupera a versão da 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().
Tham Số
Nome da chave para a qual a informação da versão é solicitada. Se DataStoreOptions.AllScopes estiver definido como verdadeiro ao acessar o armazenamento de dados através de DataStoreService:GetDataStore(), este nome de chave deve ser anexado ao escopo original como em "escopo/chave".
Número da versão da chave para a qual as informações de versão são solicitadas.
Lợi Nhuận
O valor da chave na versão especificada e uma instância DataStoreKeyInfo que inclui o número de versão, data e hora que a versão foi criada e funções para recuperar UserIds e metadados.
GetVersionAtTimeAsync
Essa função recupera a versão da chave que estava atual em um determinado momento, bem como uma instância DataStoreKeyInfo.
Tham Số
Nome da chave para a qual a informação da versão é solicitada. Se DataStoreOptions.AllScopes estiver definido como verdadeiro ao acessar o armazenamento de dados através de DataStoreService:GetDataStore(), este nome de chave deve ser anexado ao escopo original como em "escopo/chave".
O tempo de marca de Unix em milisegundos para a qual a versão solicitada estava atual. Deve ser maior que zero. Não deve ser maior que dez minutos no futuro.
Lợi Nhuận
O valor da chave que estava atual na hora especificada e uma instância DataStoreKeyInfo que inclui o número de versão, data e hora que a versão foi criada e funções para recuperar UserIds e metadados. nil se nenhuma versão estava atual na hora solicitada.
Mẫu mã
The following code sample retrieves data store key versions using timestamps.
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
Essa função retorna um objeto DataStoreKeyPages para listar através das chaves de um armazenamento de dados. Ela aceita um parâmetro opcional prefix para localizar apenas chaves cujos nomes começam com o prefixo fornecido.
Se DataStoreOptions.AllScopes estiver definido como verdadeiro ao acessar o armazenamento de dados através de DataStoreService:GetDataStore(), as chaves serão retornadas com todos os scopes como prefixos.
Tham Số
(Opcional) Prefixo para usar para localizar chaves.
(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, que por sua vez padrão para 50 itens por página.
(Opcional) Cursor para continuar a iteração.
(Opcional) Excluir chaves excluídas de serem retornadas.
Quando ativado, ListKeys verificará até 512 chaves. Se todas as chaves verificadas forem excluídas, ele retornará uma lista vazia com um cursor para continuar a iteração.
Lợi Nhuận
Uma instância DataStoreKeyPages que lista as chaves como DataStoreKey instâncias.
ListVersionsAsync
Essa função lista as versões da chave especificada em ordem crescente ou decrescente, especificadas por um parâmetro Enum.SortDirection. Ele pode filtrar opcionalmente as versões retornadas por tempo mínimo e máximo.
Tham Số
Nome da chave para as versões listadas. Se DataStoreOptions.AllScopes estiver definido como verdadeiro ao acessar o armazenamento de dados através de DataStoreService:GetDataStore(), este nome de chave deve ser anexado ao escopo original como em "escopo/chave".
(Opcional) Lista de itens que especificam a ordem de classificação ascendente ou descendente.
(Opcional) Data de sincronização de Unix em milisegundos após a qual as versões devem ser listadas.
(Opcional) Data de sincronização do tempo em milisegundos até o qual as versões devem ser listadas.
(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, que por sua vez padrão para 1024 itens por página.
Lợi Nhuận
Uma instância DataStoreVersionPages que lista todas as versões da chave como instâncias DataStoreObjectVersionInfo .
Mẫu mã
The following code sample retrieves all versions after a specified starting time, sorted in ascending order.
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
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 "tombstone" e o valor removido não pode ser recuperado mais tarde.
Tham Số
Nome da chave para a qual uma versão 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 com o escopo original como em "escopo/chave".
Número da versão da chave para remover.