데이터 저장소를 참조하십시오.
요약
메서드
지정된 키 버전을 검색합니다.
지정된 시간에 현재였던 키 버전을 검색합니다.
- ListKeysAsync(prefix : string,pageSize : number,cursor : string,excludeDeleted : boolean):DataStoreKeyPages
데이터 상점키를 통해 열거하기 위한 DataStoreKeyPages 개체를 반환합니다.
- ListVersionsAsync(key : string,sortDirection : Enum.SortDirection,minDate : number,maxDate : number,pageSize : number):DataStoreVersionPages
키의 모든 버전을 열거합니다.
지정된 버전의 키를 영구적으로 삭제합니다.
지정된 데이터 저장소의 키 값과 DataStoreKeyInfo 인스턴스를 반환합니다.
- IncrementAsync(key : string,delta : number,userIds : Array,options : DataStoreIncrementOptions):Variant
제공된 금액으로 키의 값을 증가시킵니다(둘 다 정수여야 함).
지정된 키를 제거하면서 액세스 가능한 버전을 유지합니다.
지정된 키에 대한 데이터 저장소 값을 설정합니다.
지정된 콜백 함수에서 새 값으로 키 값을 업데이트합니다.
속성
메서드
GetVersionAsync
이 함수는 지정된 키 버전과 함께 DataStoreKeyInfo 인스턴스를 검색합니다.버전 식별자는 DataStore:ListVersionsAsync()를 통해 찾거나 대신 GlobalDataStore:SetAsync()에서 반환된 식별자일 수 있습니다.
매개 변수
버전 정보가 요청된 키 이름.데이터 저장소에 액세스하는 경우 DataStoreOptions.AllScopes 가 DataStoreService:GetDataStore()를 통해 진실로 설정되었으면, 이 키 이름은 "scope/key"와 같이 원래 범위와 함께 붙여야 합니다.
버전 정보가 요청된 키의 버전 번호.
반환
지정된 버전에서 키의 값과 버전 번호, 생성 날짜 및 시간을 포함하는 DataStoreKeyInfo 인스턴스, 그리고 버전을 검색하고 메타데이터를 검색하는 함수를 포함하는 UserIds 인스턴스.
GetVersionAtTimeAsync
이 함수는 지정된 시간에 현재였던 키 버전과 함께 DataStoreKeyInfo 인스턴스를 검색합니다.
매개 변수
버전 정보가 요청된 키 이름.데이터 저장소에 액세스하는 경우 DataStoreOptions.AllScopes 가 DataStoreService:GetDataStore()를 통해 진실로 설정되었으면, 이 키 이름은 "scope/key"와 같이 원래 범위와 함께 붙여야 합니다.
요청된 버전이 현재인 밀리초 단위의 Unix 시간戳.0보다 커야 합니다.미래에 10분 이상 걸리면 안 됩니다.
반환
지정된 시간에 현재였던 키의 값과 버전 번호, 생성된 날짜 및 시간을 포함하는 인스턴스와 버전을 검색하고 메타데이터를 검색하는 함수를 포함합니다.nil 요청 시점에 사용 가능한 버전이 없으면 현재 버전이 없습니다.
코드 샘플
The following code sample retrieves data store key versions using timestamps.
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
이 함수는 데이터 상점키를 통해 열거하기 위한 DataStoreKeyPages 개체를 반환합니다.선택적 prefix 매개변수를 수락하여 제공된 접두사로 시작하는 키만 찾습니다.
데이터 저장소에 액세스하는 경우 DataStoreOptions.AllScopes 가 DataStoreService:GetDataStore()를 통해 진실로 설정되면 키는 모든 범위가 접두사로 반환됩니다.
매개 변수
(옵션) 키 찾기에 사용할 접두사.
(옵션) 각 페이지에 반환될 아이템 수.값이 지정되지 않으면 엔진이 데이터 저장소 웹 서비스에 기본값인 0을 전송하고, 이는 페이지당 50개의 항목으로 기본값으로 설정됩니다.
(옵션) 반복을 계속하기 위한 커서.
(옵션) 삭제된 키가 반환되지 않도록 하십시오.
ListKeys가 활성화되면 최대 512개의 키를 확인합니다.선택한 모든 키가 삭제되면 반복을 계속하기 위해 커서가 있는 빈 목록을 반환합니다.
반환
키를 DataStoreKeyPages 인스턴스로 열거하는 DataStoreKey 인스턴스입니다.
ListVersionsAsync
이 함수는 상위 또는 하위 순서로 지정된 Enum.SortDirection 매개 변수에 의해 지정된 특정 키의 버전을 열거합니다.최소 및 최대 타임스탬프로 반환된 버전을 필터링할 수 있습니다.
매개 변수
나열할 버전의 키 이름.데이터 저장소에 액세스하는 경우 DataStoreOptions.AllScopes 가 DataStoreService:GetDataStore()를 통해 진실로 설정되었으면, 이 키 이름은 "scope/key"와 같이 원래 범위와 함께 붙여야 합니다.
(옵션) 상승 또는 하강 정렬 순서를 지정하는 Enum.
(옵션) 버전이 나열되어야 하는 밀리초 후의 Unix 타임스탬프
(옵션) 버전이 나열되어야 하는 밀리초까지의 Unix 타임스탬프
(옵션) 각 페이지에 반환될 아이템 수.값이 지정되지 않으면 엔진이 데이터 저장소 웹 서비스에 기본값인 0을 보내고, 이는 페이지당 1024개의 항목으로 기본값으로 설정됩니다.
반환
모든 버전의 키를 DataStoreVersionPages 인스턴스로 열거하는 인스턴스입니다.A instance that enumerates all the versions of the key as DataStoreObjectVersionInfo instances.
코드 샘플
The following code sample retrieves all versions after a specified starting time, sorted in ascending order.
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
이 함수는 지정된 버전의 키를 영구적으로 삭제합니다. 버전 식별자는 DataStore:ListVersionsAsync()를 통해 찾을 수 있습니다.
GlobalDataStore:RemoveAsync() 와 달리, 이 함수는 새로운 "묘비" 버전을 생성하지 않으며 제거된 값은 나중에 검색할 수 없습니다.
매개 변수
버전을 제거할 키 이름.데이터 저장소에 액세스하는 경우 DataStoreOptions.AllScopes 가 DataStoreService:GetDataStore()를 통해 진실로 설정되었으면, 이 키 이름은 "scope/key"와 같이 원래 범위와 함께 붙여야 합니다.
제거할 키의 버전 번호.