본문으로 건너뛰기
버전: 5.11.7

DeleteData

public BackendReturnObject DeleteMyLatestData(string tableName);
public BackendReturnObject DeleteMyData(string tableName, string inDate);
public BackendReturnObject DeleteOtherData(string tableName, string inDate, string owner_inDate);

파라미터

ValueTypeDescriptionDefault
tableNamestring조회할 테이블명-
inDatestring조회할 row의 inDate 값-
owner_inDatestring해당 row를 소유한 유저의 inDate-

설명

DeleteMyLatestData 함수는 해당 테이블에 존재하는 가장 최근에 등록된 내 데이터 하나를 삭제합니다.
DeleteMyData 함수는 해당 테이블에 존재하는 자신의 데이터 중, inDate가 일치하는 데이터 하나를 삭제합니다.
DeleteOtherData 함수는 해당 테이블에 존재하는 데이터 중, inDate와 owner_inDate가 일치하는 데이터 하나를 삭제합니다.(public일 경우, 타인의 데이터도 삭제할 수 있습니다.)

  • 스키마 정의/미정의 여부 관계없이 데이터를 삭제할 수 있습니다.
  • 자기 자신의 public/private 데이터를 삭제할 수 있습니다.
  • 타인의 public 데이터를 삭제할 수 있습니다.
  • 타인의 private 데이터를 삭제할 수 없습니다.

Example

동기

// 해당 테이블에 존재하는 가장 최근에 등록된 내 데이터 삭제
Backend.PlayerData.DeleteMyLatestData("tableName");

// 해당 테이블에 존재하는 자신의 데이터 중, inDate와 일치하는 데이터 삭제
Backend.PlayerData.DeleteMyData("tableName", "2023-10-25:11:34:24.124Z");

// 해당 테이블에 존재하는 데이터 중, inDate, owner_inDate와 일치하는 데이터 삭제(타인 데이터도 삭제가능)

Backend.PlayerData.DeleteOtherData("tableName", "2023-10-25:11:34:24.124Z", "2023-10-22:09:14:35.616Z");

비동기

// 해당 테이블에 존재하는 가장 최근에 등록된 내 데이터 삭제
Backend.PlayerData.DeleteMyLatestData("tableName", (callback) =>
{
// 이후 처리
});

// 해당 테이블에 존재하는 데이터 중, inDate와 일치하는 데이터 삭제
Backend.PlayerData.DeleteMyData("tableName", "2023-10-25:11:34:24.124Z", (callback) =>
{
// 이후 처리
});

// 해당 테이블에 존재하는 데이터 중, inDate, owner_inDate와 일치하는 데이터 삭제(타인 데이터도 삭제가능)
Backend.PlayerData.DeleteOtherData("tableName", "2023-10-25:11:34:24.124Z", "2023-10-22:09:14:35.616Z", (callback) =>
{
// 이후 처리
});

SendQueue

// 해당 테이블에 존재하는 가장 최근에 등록된 내 데이터 삭제
SendQueue.Enqueue(Backend.PlayerData.DeleteMyLatestData, "tableName", (callback) =>
{
// 이후 처리
});

// 해당 테이블에 존재하는 데이터 중, inDate와 일치하는 데이터 삭제
SendQueue.Enqueue(Backend.PlayerData.DeleteMyData, "tableName", "2023-10-25:11:34:24.124Z", (callback) =>
{
// 이후 처리
});

// 해당 테이블에 존재하는 데이터 중, inDate, owner_inDate와 일치하는 데이터 삭제(타인 데이터도 삭제가능)
SendQueue.Enqueue(BackendBackend.PlayerData.DeleteOtherData, "tableName", "2023-10-25:11:34:24.124Z", "2023-10-22:09:14:35.616Z", (callback) =>
{
// 이후 처리
});

ReturnCase

Success cases

삭제에 성공한 경우
statusCode : 200
message : Success
returnValue : {"ConsumedCapacity":{"Write":{"CapacityUnits":{읽기량}}}} 예시 : {"ConsumedCapacity":{"Write":{"CapacityUnits":3}}}

Error cases

존재하지 않는 유저의 owner_inDate 였을 경우 statusCode : 400
errorCode : BadParameterException
message : bad owner_inDate, 잘못된 owner_inDate 입니다

프라이빗 테이블에서 타인 정보를 삭제하고자 하였을 경우 statusCode : 400
errorCode : BadParameterException
message : bad owner_inDate, 잘못된 owner_inDate 입니다

존재하지 않는 table의 삭제를 시도한 경우
statusCode : 404
errorCode : NotFoundException
message : {테이블명} table not found, {테이블명} table을(를) 찾을 수 없습니다

존재하지 않는 row의 삭제를 시도한 경우
statusCode : 404
errorCode : NotFoundException
message : gameInfo not found, gameInfo을(를) 찾을 수 없습니다

비활성화된 table의 삭제를 시도한 경우
statusCode : 412
errorCode : PreconditionFailed
message : inactiveTable 사전 조건을 만족하지 않습니다.