DataStore

Visualizza obsoleti

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Non costruibile
Non Replicato

Sommario

Metodi

Metodi provenienti da GlobalDataStore

Proprietà

Metodi

GetVersionAsync

Resa

Questa funzione recupera la versione della chiave specificata, nonché un'esempioDataStoreKeyInfo .Un identificatore di versione può essere trovato attraverso DataStore:ListVersionsAsync() o alternativamente essere l'identificatore restituito da GlobalDataStore:SetAsync() .

Parametri

key: string

Nome della chiave per cui viene richiesta l'informazione sulla versione.Se DataStoreOptions.AllScopes è stato impostato su vero quando si accede al deposito di dati attraverso DataStoreService:GetDataStore() , questo nome di chiave deve essere preceduto dalla scopo originale come in "scope/key".

Valore predefinito: ""
version: string

Numero di versione della chiave per la quale viene richiesta l'informazione sulla versione.

Valore predefinito: ""

Restituzioni

Il valore della chiave alla versione specificata e un'istanza DataStoreKeyInfo che include il numero di versione, la data e l'ora in cui è stata creata la versione e le funzioni per recuperare UserIds e i metadati.

GetVersionAtTimeAsync

Resa

Questa funzione recupera la versione chiave attuale a un dato momento nonché un'esempioDataStoreKeyInfo .

Parametri

key: string

Nome della chiave per cui viene richiesta l'informazione sulla versione.Se DataStoreOptions.AllScopes è stato impostato su vero quando si accede al deposito di dati attraverso DataStoreService:GetDataStore() , questo nome di chiave deve essere preceduto dalla scopo originale come in "scope/key".

Valore predefinito: ""
timestamp: number

Timestamp Unix in millisecondi per cui la versione richiesta era attuale.Deve essere maggiore di zero.Non deve essere più di dieci minuti nel futuro.

Valore predefinito: ""

Restituzioni

Il valore della chiave che era attivo al momento specificato e un'istanza DataStoreKeyInfo che include il numero di versione, la data e l'ora in cui è stata creata la versione e le funzioni per recuperare UserIds e i metadati.nil se nessuna versione disponibile era attiva al momento richiesto.

Campioni di codice

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

Resa

Questa funzione restituisce un oggetto DataStoreKeyPages per enumerare attraverso le chiavi di un Negoziodati.Accetta un parametro opzionale prefix opzionale per localizzare solo le chiavi il cui nome inizia con il prefisso fornito.

Se DataStoreOptions.AllScopes è stato impostato su true quando si accede al deposito di dati attraverso DataStoreService:GetDataStore(), le chiavi verranno restituite con tutti gli scopi come prefissi.

Parametri

prefix: string

(Opzionale) Prefix da utilizzare per la localizzazione delle chiavi.

Valore predefinito: ""
pageSize: number

(Opzionale) Numero di oggetti da restituire in ogni pagina.Se non viene fornito alcun valore, il motore invia un valore predefinito di 0 al servizio web del deposito dati, che a sua volta predefinisce 50 elementi per pagina.

Valore predefinito: 0
cursor: string

(Opzionale) Cursor per continuare l'iterazione.

Valore predefinito: ""
excludeDeleted: boolean

(Opzionale) Escludi le chiavi eliminate dal essere restituite.

Quando è abilitato, ListKeys controllerà fino a 512 chiavi.Se tutte le chiavi controllate vengono eliminate, restituirà un elenco vuoto con un cursore per continuare l'iterazione.

Valore predefinito: false

Restituzioni

Un'istanza DataStoreKeyPages che elenca le chiavi come DataStoreKey istanze.

ListVersionsAsync

Resa

Questa funzione elenca le versioni della chiave specificata in ordine ascendente o discendente specificato da un parametro Enum.SortDirection.Può filtrare opzionalmente le versioni restituite per timestamp minimo e massimo.

Parametri

key: string

Nome chiave per le versioni da elencare.Se DataStoreOptions.AllScopes è stato impostato su vero quando si accede al deposito di dati attraverso DataStoreService:GetDataStore() , questo nome di chiave deve essere preceduto dalla scopo originale come in "scope/key".

Valore predefinito: ""
sortDirection: Enum.SortDirection

(Opzionale) Enum specificare l'ordine di ordinamento ascendente o discendente.

Valore predefinito: "Ascending"
minDate: number

(Opzionale) Unix timestamp in millisecondi dopo i quali le versioni dovrebbero essere elencate.

Valore predefinito: 0
maxDate: number

(Opzionale) Unix timestamp in millisecondi fino a cui le versioni dovrebbero essere elencate.

Valore predefinito: 0
pageSize: number

(Opzionale) Numero di oggetti da restituire in ogni pagina.Se non viene fornito alcun valore, il motore invia un valore predefinito di 0 al servizio web del deposito dati, che a sua volta predefinisce 1024 oggetti per pagina.

Valore predefinito: 0

Restituzioni

Un'istanza DataStoreVersionPages che elenca tutte le versioni della chiave come DataStoreObjectVersionInfo istanze.

Campioni di codice

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

()
Resa

Questa funzione elimina in modo permanente la versione specificata di una chiave. Gli identificatori di versione possono essere trovati attraverso DataStore:ListVersionsAsync() .

A differenza di GlobalDataStore:RemoveAsync(), questa funzione non crea una nuova versione di "tombstone" e il valore rimosso non può essere recuperato in seguito.

Parametri

key: string

Nome della chiave per la quale viene rimossa una versione.Se DataStoreOptions.AllScopes è stato impostato su vero quando si accede al deposito di dati attraverso DataStoreService:GetDataStore() , questo nome di chiave deve essere preceduto dalla scopo originale come in "scope/key".

Valore predefinito: ""
version: string

Numero di versione della chiave da Rimuovere.

Valore predefinito: ""

Restituzioni

()

Eventi