DataStoreService

Tampilkan yang Tidak Digunakan Lagi

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Tidak Dapat Dibuat
Layanan
Tidak Direplikasi

DataStoreService mengekspos metode untuk mendapatkan GlobalDataStore dan OrderedDataStore objek. Data store hanya dapat diakses oleh server game, jadi Anda hanya dapat menggunakan 0> Class.DataStoreService

Lihat Toko Data untuk panduan lengkap tentang struktur data, manajemen, penanganan kesalahan, dll.

Contoh Kode

DataStore Budget

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

Rangkuman

Properti

  • Tidak Direplikasi
    Keamanan Pengguna Lokal
    Baca Paralel

    Tetapkan apakah fungsi penyimpanan data harus otomatis dicoba kembali atau tidak. DataStoreService tidak menghormati property ini karena otomatis dicoba kembali telah dinonaktifkan karena alasan teknis. Oleh karena itu, Anda harus menerapkan sistem untuk mencoba operasi kembali sendiri.

Metode

Properti

AutomaticRetry

Tidak Direplikasi
Keamanan Pengguna Lokal
Baca Paralel

Tetapkan apakah fungsi penyimpanan data harus otomatis dicoba kembali atau tidak.

DataStoreService tidak menghormati property ini karena pencarian otomatis telah dinonaktifkan karena alasan teknis. Oleh karena itu, Anda harus menerapkan sistem untuk mencoba operasi pencarian sendiri. Mungkin pencarian otomatis akan diaktifkan kembali di masa depan.

Metode

GetDataStore

Fungsi ini membuat instansi DataStore dengan nama dan skala yang diberikan. Panggilan berikutnya ke metode ini dengan nama/skala yang sama akan mengembalikan objek yang sama.

Menggunakan parameter scope akan membatasi operasi ke skala itu dengan secara otomatis menunda skala ke kunci dalam semua operasi yang dilakukan di data toko. Fungsi ini juga menerima instansi DataStoreOptions yang memungkinkan opsi untuk mengaktifkan AllScopes . Lihat 1>Data Tok

Parameter

name: string

Nama toko data.

scope: string

(Opsional) Sebuah string yang menentukan rentang.

Nilai Default: "global"
options: Instance

(Opsional) A DataStoreOptions instance untuk mengaktifkan fitur eksperimental dan fitur API v2.

Nilai Default: "nil"

Memberikan nilai

Sebuah DataStore instansi dengan nama yang diberikan dan scope opcional.

GetGlobalDataStore

Fungsi ini mengembalikan default GlobalDataStore . Jika Anda ingin mengakses toko data bernama khusus, Anda harus menggunakan fungsi Class.DataStoreService:GetDataStore() .


Memberikan nilai

Contoh Kode

Get GlobalDataStore Instance

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

GetOrderedDataStore

Metode ini mengembalikan OrderedDataStore, mirip dengan cara GetDataStore() melakukannya dengan GlobalDataStores . Panggilan berikutnya ke metode ini dengan nama/skala yang sama akan mengembalikan objek yang sama.

Parameter

name: string
scope: string
Nilai Default: "global"

Memberikan nilai

Contoh Kode

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

Fungsi ini mengembalikan jumlah permintaan penyimpanan data yang dapat dilakukan tempat saat ini berdasarkan Enum.DataStoreRequestType yang diberikan. Setiap permintaan yang melebihi anggaran ini dikenakan biaya. Pengawasan dan penyesuaian frekuensi permintaan penyimpanan data menggunakan fungsi ini direkomendasikan.

Parameter


Memberikan nilai

Contoh Kode

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

Hasil

Mengembalikan objek DataStoreListingPages untuk mengumpulkan melalui semua toko data pengalaman. Menerima parameter prefix secara opsional untuk menemukan toko data yang bernama dimulai dengan prefiks yang disediakan.

Hanya penyimpanan data yang berisi setidaknya satu objek akan di daftarkan melalui fungsi ini.

Parameter

prefix: string

(Opsional) Prefix untuk menghitung data store yang dimulai dengan prefiksi yang diberikan.

Nilai Default: ""
pageSize: number

(Opsional) Jumlah item yang akan dikembalikan setiap halaman. Secara default adalah 32.

Nilai Default: 0
cursor: string

(Opsional) Cursor untuk melanjutkan iterasi.

Nilai Default: ""

Memberikan nilai

DataStoreListingPages instansi yang berisi DataStoreInfo instansi yang memberikan rincian seperti nama, waktu pembuatan, dan waktu pembaruan terakhir.

Acara