DataStore

Artık kullanılmayanları göster

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Oluşturulamaz
Çoğaltılmamış

Özet

Yöntemler

Şuradan alınan Yöntemler: GlobalDataStore

Özellikler

Yöntemler

GetVersionAsync

Bekletir

Bu işlev, belirtilen anahtar sürümünü ve bir DataStoreKeyInfo durumde alır.Bir versiyon tanımlayıcısı DataStore:ListVersionsAsync() veya alternatif olarak GlobalDataStore:SetAsync() tarafından döndürülen tanımlayıcı olabilir.

Parametreler

key: string

Sürüm bilgisi talep edilen anahtar adı.Eğer DataStoreOptions.AllScopes veri depolarına erişirken DataStoreService:GetDataStore() aracılığıyla doğru ayarlanmışsa, bu anahtar adı "scope/key" içindeki orijinal kapsama eklenmelidir.

Varsayılan değer: ""
version: string

Sürüm bilgisi talep edilen anahtarın sürüm numarası.

Varsayılan değer: ""

Dönüşler

Belirtilen versiyondaki anahtarın değeri ve versiyon numarası, tarih ve saati içeren DataStoreKeyInfo bir örnek ve UserIds ve metadat alma işlevleri içeren örnek.

GetVersionAtTimeAsync

Bekletir

Bu işlev, belirli bir anda mevcut olan anahtar sürümünü ve bir DataStoreKeyInfo durumde alır.

Parametreler

key: string

Sürüm bilgisi talep edilen anahtar adı.Eğer DataStoreOptions.AllScopes veri depolarına erişirken DataStoreService:GetDataStore() aracılığıyla doğru ayarlanmışsa, bu anahtar adı "scope/key" içindeki orijinal kapsama eklenmelidir.

Varsayılan değer: ""
timestamp: number

Talep edilen sürümün mevcut olduğu saniyelerde Unix zaman damgası.Sıfırdan büyük olmalıdır.Gelecekte on dakikadan fazla olmamalı.

Varsayılan değer: ""

Dönüşler

Belirtilen zamanda mevcut olan anahtarın değeri ve versiyon numarası, tarih ve saati içeren DataStoreKeyInfo bir örnek ve versiyonu geri almak ve metadatı almak için fonksiyonları içeren UserIds bir örnek.nil talep edilen sürede mevcut bir sürüm yoksa, istenen sürede.

Kod Örnekleri

The following code sample retrieves data store key versions using timestamps.

Retrieving DataStore Versions by Time

local DataStoreService = game:GetService("DataStoreService")
local dataStore = DataStoreService:GetDataStore("DataStore")
local key = "key-123"
function setData(data)
local success, result = pcall(function()
dataStore:SetAsync(key, data)
end)
if not success then
warn(result)
end
end
function getVersionAtTime(timestamp)
local success, result, keyInfo = pcall(function()
return dataStore:GetVersionAtTimeAsync(key, timestamp.UnixTimestampMillis)
end)
if success then
if result == nil then
print("No version found at time")
else
print(result, keyInfo.Version)
end
else
warn(result)
end
end
-- Previously ran at 2024/12/02 6:00 UTC
setData("version 1")
-- Previously ran at 2024/12/02 9:00 UTC
setData("version 2")
-- Prints "No version found at time"
local time1 = DateTime.fromUniversalTime(2024, 12, 02, 05, 00)
getVersionAtTime(time1)
-- Prints "version 1 <version>"
local time2 = DateTime.fromUniversalTime(2024, 12, 02, 07, 00)
getVersionAtTime(time2)
-- Prints "version 2 <version>"
local time3 = DateTime.fromUniversalTime(2024, 12, 02, 10, 00)
getVersionAtTime(time3)

ListKeysAsync

Bekletir

Bu işlev, bir veri depolamasının anahtarları aracılığıyla sayım yapmak için bir DataStoreKeyPages nesne döndürür.Verilen önfix ile başlayan anahtarları yalnızca bulmak için seçici bir prefix parametresi kabul eder.

Eğer DataStoreOptions.AllScopes veri depolarına erişirken DataStoreService:GetDataStore() aracılığıyla doğru ayarlanmışsa, anahtarlar tüm alanlar olarak ön ek olarak iade edilecektir.

Parametreler

prefix: string

(Opsiyonel) Anahtarları bulmak için kullanılacak ön ek.

Varsayılan değer: ""
pageSize: number

(Opsiyonel) Her sayfada döndürülecek öğe sayısı.Değer verilmezse, motor veri depolama web hizmetine varsayılan bir değer olan 0'ı gönderir, ki bu da sayfa başına 50 öğeye düşer.

Varsayılan değer: 0
cursor: string

(Opsiyonel) Döngüyü devam ettirmek için kursor.

Varsayılan değer: ""
excludeDeleted: boolean

(Opsiyonel) Silinen anahtarların geri gönderilmesini engelle.

Açık olduğunda, ListKeys en fazla 512 anahtarı kontrol edecektir.Tüm kontrol edilen anahtarlar silinirse, döngüyü sürdürmek için boş bir liste ile bir işaretçi döndürür.

Varsayılan değer: false

Dönüşler

Anahtarları DataStoreKeyPages örnekleri olarak listeleyen bir örnek DataStoreKey.

ListVersionsAsync

Bekletir

Bu işlev, belirtilen anahtarın sırasına göre artış veya azalma olarak belirtilen sürümlerini listeler Enum.SortDirection bir parametre tarafından belirtilen düzende.Opsiyonel olarak döndürülen sürümleri minimum ve maksimum zamana göre filtreleyebilir.

Parametreler

key: string

Listelenen sürümler için anahtar adı.Eğer DataStoreOptions.AllScopes veri depolarına erişirken DataStoreService:GetDataStore() aracılığıyla doğru ayarlanmışsa, bu anahtar adı "scope/key" içindeki orijinal kapsama eklenmelidir.

Varsayılan değer: ""
sortDirection: Enum.SortDirection

(Opsiyonel) Artan veya azalan sıralama düzenini belirten Enum.

Varsayılan değer: "Ascending"
minDate: number

(Opsiyonel) Versiyonların listelenmesi gereken saniyelerden sonra Unix zaman damgası.

Varsayılan değer: 0
maxDate: number

(Opsiyonel) Versiyonların listelenmesi gereken süreye kadar Unix zaman damgası (isteğe bağlı).

Varsayılan değer: 0
pageSize: number

(Opsiyonel) Her sayfada döndürülecek öğe sayısı.Değer verilmezse, motor veri depolama web hizmetine varsayılan bir değer olan 0'ı gönderir, ki bu da sayfa başına 1024 öğeye düşer.

Varsayılan değer: 0

Dönüşler

Anahtarın tüm sürümlerini DataStoreVersionPages örnekleyen bir DataStoreObjectVersionInfo örneği.

Kod Örnekleri

The following code sample retrieves all versions after a specified starting time, sorted in ascending order.

Retrieving DataStore Versions With A Date Filter

local DataStoreService = game:GetService("DataStoreService")
local experienceStore = DataStoreService:GetDataStore("PlayerExperience")
local time = DateTime.fromUniversalTime(2020, 10, 09, 01, 42)
local listSuccess, pages = pcall(function()
return experienceStore:ListVersionsAsync("User_1234", nil, time.UnixTimestampMillis)
end)
if listSuccess then
local items = pages:GetCurrentPage()
for key, info in pairs(items) do
print("Key:", key, "; Version:", info.Version, "; Created:", info.CreatedTime, "; Deleted:", info.IsDeleted)
end
end

RemoveVersionAsync

()
Bekletir

Bu işlev, belirtilen bir anahtarın özel versiyonunu kalıcı olarak siler. Versiyon tanımlayıcıları DataStore:ListVersionsAsync() aracılığıyla bulunabilir.

GlobalDataStore:RemoveAsync() 'den farklı olarak, bu işlev yeni bir "mezar taşı" versiyonu oluşturmaz ve kaldırılan değer daha sonra alınamaz.

Parametreler

key: string

Bir sürümün kaldırılması gereken anahtar adı.Eğer DataStoreOptions.AllScopes veri depolarına erişirken DataStoreService:GetDataStore() aracılığıyla doğru ayarlanmışsa, bu anahtar adı "scope/key" içindeki orijinal kapsama eklenmelidir.

Varsayılan değer: ""
version: string

Kaldırılacak anahtarın versiyon numarası.

Varsayılan değer: ""

Dönüşler

()

Etkinlikler