DataStoreService

แสดงที่เลิกใช้งานแล้ว

*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่

ไม่สามารถสร้าง
บริการ
ไม่ซ้ำ

DataStoreService เปิดเผยวิธีการรับ GlobalDataStore และ OrderedDataStore วัตถุ

ดู ห้องเก็บข้อมูล สำหรับคู่มือที่ละเอียดเกี่ยวกับโครงสร้างข้อมูล การจัดการ การแก้ไขข้อผิดพลาด ฯลฯ

ตัวอย่างโค้ด

DataStore Budget

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

สรุป

คุณสมบัติ

  • ไม่ซ้ำ
    การรักษาความปลอดภัยของผู้ใช้ภายใน
    อ่านพร้อมๆ กัน

    ตั้งค่าว่าควรให้ระบบห้องข้อมูลทำงานอีกครั้งโดยอัตโนมัติหรือไม่ บริการห้องข้อมูลไม่เคารพค่านี้เนื่องจากเหตุผลทางเทคนิค ดังนั้นคุณจึงต้องให้ระบบห้องข้อมูลทำงานอีกครั้งด้วยตัวคุณเอง

วิธีการ

คุณสมบัติ

AutomaticRetry

ไม่ซ้ำ
การรักษาความปลอดภัยของผู้ใช้ภายใน
อ่านพร้อมๆ กัน

ตั้งค่าว่าควรให้ระบบเก็บข้อมูลทำงานอีกครั้งอัตโนมัติหรือไม่

DataStoreService ไม่เคารพค่านี้เพราะการทดลองอีกครั้งอัตโนมัติถูกปิดใช้งานเนื่องจากเหตุผลทางเทคนิค ดังนั้นคุณจึงต้องใช้ระบบสำหรับการทดลองอีกครั้งด้วยตัวคุณเอง เป็นไปได้ว่าการทดลองอีกครั้งจะเปิดใช้งานอ

วิธีการ

GetDataStore

ฟังก์ชันนี้สร้าง DataStore ริ้วมกับชื่อและขอบเขตที่กำหนด การเรียกต่อไปของวิธีนี้ด้วยชื่อเดียวกัน/ขอบเขตเดียวกันจะส่งคืนวัตถุเดียวกัน

การใช้ตัวประการ scope จะจํากัดการดําเนินการในขอบเขตนั้นโดยการปกปิดการดําเนินการโดยอัตโนมัติให้กับสโคปในทุกการดําเนิน

พารามิเตอร์

name: string

ร้านค้า

scope: string

(ตัวเลือก) ตัวอักษรที่ระบุขอบเขต

ค่าเริ่มต้น: "global"
options: Instance

(อpcional) รุ่น A ของ Class.DataStoreOptions เพื่อเปิดใช้งานคุณสมบัติทดลองและคุณสมบัติ API v2

ค่าเริ่มต้น: "nil"

ส่งค่ากลับ

ตัวอย่าง DataStore ที่มีชื่อและขอบเขตที่ตั้ง

GetGlobalDataStore

ฟังก์ชันนี้กลับค่าเริ่มต้นของ GlobalDataStore หากคุณต้องการเข้าถึงคลังข้อมูลชื่อว่านั้นแทน, คุณควรใช้ funct Class.DataStoreService:GetDataStore() ฟังก์ชัน


ส่งค่ากลับ

ตัวอย่างโค้ด

Get GlobalDataStore Instance

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

GetOrderedDataStore

วิธีนี้จะกลับมาเป็น OrderedDataStore ซึ่งเหมือนวิธีที่ GetDataStore() ทำกับ GlobalDataStores ต่อมา การเรียกวิธีนี้ด้วยชื่อเดียวกัน/ขอบเขตเดี

พารามิเตอร์

name: string
scope: string
ค่าเริ่มต้น: "global"

ส่งค่ากลับ

ตัวอย่างโค้ด

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

ฟังก์ชันนี้กลับจำนวนคำขอเก็บข้อมูลที่เก็บได้ที่สถานที่ปัจจุบันสามารถทำได้ตามที่ระบุไว้ใน Enum.DataStoreRequestType ใด ๆ คำขอที่เกินขีดจำกัดนี้จะถูกปฏิเสธ การตรวจสอบและปรับปรุ

พารามิเตอร์


ส่งค่ากลับ

ตัวอย่างโค้ด

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

ผลตอบแทน

กลับมาเป็นวัตถุ DataStoreListingPages สำหรับการนับผ่านทุกคลังข้อมูลในประสบการณ์ มันยอมรับตัวประกายชื่อ prefix อย่างไรก็ตามเพียงเพื่อตรวจค้นคลังข้อมูลที่มีชื่อเริ่มต้นด้วยคุณลั

เฉพาะร้านค้าข้อมูลที่มีอย่างน้อยหนึ่งรายการเท่านั้นที่จะได้รับการระบุโดยฟังก์ชันนี้

พารามิเตอร์

prefix: string

(อpcional) คํานําหน้าสําหรับนับรวมข้อมูลที่เริ่มต้นด้วยคํานําหน้าที่ให้

ค่าเริ่มต้น: ""
pageSize: number

(ตัวเลือก) จำนวนรายการที่จะถูกส่งกลับในแต่ละหน้า โดยปกติจะเป็น 32 รายการ

ค่าเริ่มต้น: 0
cursor: string

(อpcional) ตัวเลือกเพื่อดำเนินการต่อ

ค่าเริ่มต้น: ""

ส่งค่ากลับ

DataStoreListingPages รุ่นที่มี DataStoreInfo รุ่นที่ให้รายละเอียดเช่นชื่อ เวลาการสร้าง และเวลาที่ปรับปรุงล่าสุด

อีเวนต์