DataStoreService

Afficher les obsolètes

*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.

Création impossible
Service
Non répliqué

DataStoreService expose des méthodes pour obtenir GlobalDataStore et OrderedDataStore des objets.Les magasins de données ne peuvent être accessés que par les serveurs de jeu, vous ne pouvez donc utiliser que DataStoreService dans un Script ou un ModuleScript qui est utilisé par un Script .

Voir magasins de données pour un guide complet sur la structure des données, la gestion, la gestion des erreurs, etc.

Échantillons de code

This code sample prints the request budget for all data store request types.

DataStore Budget

local DataStoreService = game:GetService("DataStoreService")
for _, enumItem in pairs(Enum.DataStoreRequestType:GetEnumItems()) do
print(enumItem.Name, DataStoreService:GetRequestBudgetForRequestType(enumItem))
end

Résumé

Propriétés

  • Non répliqué
    Sécurité des utilisateurs locaux
    Lecture parallèle

    Définit si les fonctions de stockage de données doivent automatiquement réessayer ou non.DataStoreService ne respecte pas cette propriété car la réessai automatique a été désactivée pour des raisons techniques.Vous devez donc mettre en œuvre des systèmes pour réessayer les opérations vous-même.

Méthodes

Propriétés

AutomaticRetry

Non répliqué
Sécurité des utilisateurs locaux
Lecture parallèle

Méthodes

GetDataStore

Paramètres

name: string
Valeur par défaut : ""
scope: string
Valeur par défaut : "global"
options: Instance
Valeur par défaut : "nil"

Retours

GetGlobalDataStore


Retours

Échantillons de code

Get GlobalDataStore Instance

local DataStoreService = game:GetService("DataStoreService")
local GlobalDataStore = DataStoreService:GetGlobalDataStore()
print(GlobalDataStore.Name)

GetOrderedDataStore

Paramètres

name: string
Valeur par défaut : ""
scope: string
Valeur par défaut : "global"

Retours

Échantillons de code

OrderedDataStore Basics

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

Paramètres

Valeur par défaut : ""

Retours

Échantillons de code

Imprimer la demande de budget

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

Rendement

Paramètres

prefix: string
Valeur par défaut : ""
pageSize: number
Valeur par défaut : 0
cursor: string
Valeur par défaut : ""

Retours

Événements