DataStoreService
*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.
DataStoreService zeigt Methoden für das Abrufen von GlobalDataStore und OrderedDataStore Objekten. Data-Stores können nur von Spiel-Servern aufgerufen werden, so dass Sie nur 0> Class.DataStoreService0> innerhalb eines <
Siehe Datenspeicherplätze für eine umfassende Anleitung zu Datenstruktur, Verwaltung, Fehlerbehandlung usw.
Code-Beispiele
local DataStoreService = game:GetService("DataStoreService")
for _, enumItem in pairs(Enum.DataStoreRequestType:GetEnumItems()) do
print(enumItem.Name, DataStoreService:GetRequestBudgetForRequestType(enumItem))
end
Zusammenfassung
Eigenschaften
Setzt, ob Daten-Store-Funktionen automatisch erneut versuchen sollen, oder nicht. DataStoreService respektiert diese Eigenschaft nicht, da das automatische erneut versuchen aufgrund technischer Gründe deaktiviert wurde. Daher müssen Sie Systeme für das Wiederholen von Operationen selbst implementieren.
Methoden
Erstellt eine DataStore Instanz mit dem angegebenen Namen und Umfang.
Rückgibt den Store.
Erhalten Sie einen OrderedDataStore mit einem Namen und optionalem Zoom.
Gibt die Anzahl der Anfragen zurück, die gemäß dem angegebenen eingebengemacht werden können.
Gibt ein DataStoreListingPages Objekt zurück, um durch alle Erlebnistyp-Datenspeicherplätze zu nummerieren.
Eigenschaften
AutomaticRetry
Setzt, ob Daten-Store-Funktionen automatisch erneut versucht werden sollen oder nicht.
DataStoreService respektiert diese Eigenschaft nicht, da das automatische Wiederholen aufgrund technischer Gründe deaktiviert wurde. Daher musst du Systeme für das Wiederholen von Operationen selbst implementieren. Es ist möglich, dass das automatische Wiederholen in der Zukunft erneut aktiviert wird.
Methoden
GetDataStore
Diese Funktion erstellt eine DataStore Instanz mit dem angegebenen Namen und Speicherbereich. Aufeinanderfolgende Aufrufe dieses Methods mit dem gleichen Namen/Speicherbereich geben dieselben Objekte zurück.
Die Verwendung des scope-Parameters wird die Operationen auf dieses Speicherlimit beschränken, indem die Zoom-Anpassung automatisch auf alle Operationen auf dem Datenstores ausgeführt wird. Diese Funktion akzeptiert auch eine optionale DataStoreOptions -Instanz, die Optionen für die Aktivierung von AllScopes enthält. Siehe 1>Datenspe
Parameter
Name des Store.
(Optional) Ein String, der das Ziel angeben.
(Optional) A DataStoreOptions Instanz, um experimentelle Funktionen und V2-API-Funktionen zu aktivieren.
Rückgaben
GetGlobalDataStore
Diese Funktion gibt das Standard GlobalDataStore zurück. Wenn Sie auf einen bestimmten namen -Datenspeicher zugreifen möchten, sollten Sie die Funktion GetDataStore() verwenden.
Rückgaben
Code-Beispiele
local DataStoreService = game:GetService("DataStoreService")
local GlobalDataStore = DataStoreService:GetGlobalDataStore()
print(GlobalDataStore.Name)
GetOrderedDataStore
Diese Methode gibt ein OrderedDataStore zurück, ähnlich wie die Art und Weise, wie GetDataStore() mit GlobalDataStores macht. Aufeinanderfolgende Aufrufe dieser Methode mit demselben Namen/Skala werden das gleiche Objekt zurückgeben.
Parameter
Rückgaben
Code-Beispiele
local DataStoreService = game:GetService("DataStoreService")
local pointsStore = DataStoreService:GetOrderedDataStore("Points")
local function printTopTenPlayers()
local isAscending = false
local pageSize = 10
local pages = pointsStore:GetSortedAsync(isAscending, pageSize)
local topTen = pages:GetCurrentPage()
-- The data in 'topTen' is stored with the index being the index on the page
-- For each item, 'data.key' is the key in the OrderedDataStore and 'data.value' is the value
for rank, data in ipairs(topTen) do
local name = data.key
local points = data.value
print(name .. " is ranked #" .. rank .. " with " .. points .. "points")
end
-- Potentially load the next page...
--pages:AdvanceToNextPageAsync()
end
-- Create some data
pointsStore:SetAsync("Alex", 55)
pointsStore:SetAsync("Charley", 32)
pointsStore:SetAsync("Sydney", 68)
-- Display the top ten players
printTopTenPlayers()
GetRequestBudgetForRequestType
Diese Funktion gibt die Anzahl der Datenstores an, die der aktuelle Ort basierend auf der angegebenen Enum.DataStoreRequestType machen kann. Alle Anfragen, die diese Budget überschreiten, unterliegen der Drosselung. Die Überwachung und Anpassung der Frequenz der Datenstores mit dieser Funktion ist empfohlen.
Parameter
Rückgaben
Code-Beispiele
local DataStoreService = game:GetService("DataStoreService")
local globalStore = DataStoreService:GetGlobalDataStore()
local function printBudget()
local budget = DataStoreService:GetRequestBudgetForRequestType(Enum.DataStoreRequestType.SetIncrementAsync)
print("Current set/increment budget:", budget)
end
for i = 1, 5 do
local key = "key" .. i
local success, err = pcall(function()
globalStore:SetAsync(key, true)
end)
if success then
printBudget()
else
print(err)
end
end
ListDataStoresAsync
Gibt ein DataStoreListingPages-Objekt zurück, um durch alle Erlebniszu listieren. Es akzeptiert ein optionales prefix-Parameter, um nur auf Datenstores zuzugreifen, deren Namen mit dem angegebenen Präfix beginnen.
Nur Daten, die mindestens ein Objekt enthalten, werden über diese Funktion aufgelistet.
Parameter
(Optional) Präfix, um Datenstores zu zählen, die mit dem angegebenen Präfix beginnen.
(Optional) Anzahl der Elemente, die in jede Seite zurückgegeben werden sollen. Standardmäßig sind 32.
(Optional) Cursor zum Fortfahren der Iteration.
Rückgaben
DataStoreListingPages Instanz, die DataStoreInfo Instanzen enthält, die Details wie Name, Erstellungszeit und Zeit der letzten Aktualisierung bereitstellen.