DataStoreService

Mostrar obsoleto

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

No creable
Servicio
No replicado

DataStoreService exibe métodos para obter Class.GlobalDataStore e Class.OrderedDataStore objetos. Os armazenamentos de dados só podem ser acessados por servidores de jogos, então você só pode usar Class.DataStoreService</10

Veja Armazenamento de dados para um guia abrangente sobre estrutura de dados, gerenciamento, processamento de erros, etc.

Muestras de código

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

Resumen

Propiedades

  • No replicado
    Seguridad de usuario local
    Leer paralelo

    Define se as funções de armazenamento de dados devem ser reiniciadas automaticamente ou não. DataStoreService não respeita esta propriedade, pois o armazenamento de dados automático foi desativado por razões técnicas. Portanto, você deve implementar sistemas para reiniciar operações.

Métodos

Propiedades

AutomaticRetry

No replicado
Seguridad de usuario local
Leer paralelo

Define se as funções de armazenamento de dados devem tentar automaticamente ou não.

DataStoreService não respeita essa propriedade porque o tente automático foi desativado por razões técnicas. Portanto, você deve implementar sistemas para tentar operações de novo. É possível que o tente automático seja ativado novamente no futuro.

Métodos

GetDataStore

Essa função cria uma instância DataStore com o nome e escopo fornecidos. Chamadas subsequentes a esse método com o mesmo nome/escopo retornarão o mesmo objeto.

Usar o parâmetro scope restreará as operações para esse alcance automaticamente ao prender o alcance às chaves em todas as operações feitas no armazenamento de dados. Essa função também aceita uma instância opcional de Class.DataStoreOptions que inclui opções para habilitar Class.DataStoreOptions.AllScopes|AllScopes . Veja Armazenamentos de dados</

Parámetros

name: string

Nome do armazenamento de dados.

scope: string

(Opcional) Uma string especificando o escopo.

Valor predeterminado: "global"
options: Instance

(Opcional) Uma instância de DataStoreOptions para habilitar recursos experimentais e recursos da API v2.

Valor predeterminado: "nil"

Devuelve

Uma instância DataStore com nome fornecido e escopo opcional.

GetGlobalDataStore

Essa função retorna o padrão Class.GlobalDataStore . Se você quiser acessar um armazenamento de dados específico chamado dado, você deve usar a função Class.DataStoreService:GetDataStore() .


Devuelve

Muestras de código

The following example retrieves a default data store instance which behaves like a regular Instance. Since a GlobalDataStore is an Instance, functions such as GlobalDataStore:GetChildren() will execute without error.

Get GlobalDataStore Instance

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

GetOrderedDataStore

Este método retorna um OrderedDataStore, semelhante ao modo como GetDataStore() faz com GlobalDataStores . Chamadas subsequentes a este método com o mesmo nome/espectro retornarão o mesmo objeto.

Parámetros

name: string
scope: string
Valor predeterminado: "global"

Devuelve

Muestras de código

This code sample demonstrates usage of an OrderedDataStore and pages.

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

Essa função retorna o número de solicitações de armazenamento de dados que o local atual pode fazer com base no Enum.DataStoreRequestType dado. Quaisquer solicitações feitas que excedam esse orçamento estão sujeitas a restrição. Monitorar e ajustar a frequência de solicitações de armazenamento de dados usando essa função é recomendado.

Parámetros


Devuelve

Muestras de código

Print Request 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

Proporciona

Retorna um objeto DataStoreListingPages para listar através de todos os armazenamentos de dados da experiência. Ele aceita um parâmetro opcional prefix para localizar apenas armazenamentos de dados cujos nomes começam com o prefixo fornecido.

Apenas armazenamento de dados contendo pelo menos um objeto será listado via essa função.

Parámetros

prefix: string

(Opcional) Prefixo para listar armazenamentos de dados que começam com o prefixo dado.

Valor predeterminado: ""
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, que por sua vez padrão 32 itens por página.

Valor predeterminado: 0
cursor: string

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

Valor predeterminado: ""

Devuelve

DataStoreListingPages instância que contém DataStoreInfo instâncias que fornecem detalhes, como nome, hora de criação e tempo de atualização.

Eventos