테이블에 새로운 컬럼을 추가했을 때 발생하는 오류

문의 응대 : 평일 오전 10시 ~ 오후 6시
문의를 남기실 경우 다음 항목을 작성해 주세요.
정보가 부족하거나 응대시간 외 문의하는 경우 확인 및 답변이 지연될 수 있습니다.

  • 뒤끝 SDK 버전 : 5.7.1
  • 프로젝트명 :
  • 스테이터스 코드 :
  • 에러 코드 :
  • 에러 메시지 :

새로운 컨텐츠를 만들기 위해 int형 데이터 컬럼을 이미 만들어진 테이블에 추가했습니다.

현재 이미 존재하는 테이블에 새로운 컬럼을 만들었을 때
이미 테이블 안에 생성돼있는 유저들은 해당 컬럼 데이터가 비어져 있는데

최초 게임 실행시 데이터 테이블을 받고나서 시작하는 로직이라 에러가 발생합니다.

컬럼을 추가할때 기본값을 넣고 null을 비허용으로 해놨는데 새롭게 컬럼을 추가할때 해당 Key값에 데이터가 없다는 에러 예외 처리를 코드로 어떻게 해야 할지 모르겠어서 질문드립니다.

// 평소에 데이터를 넣던 방식
level = int.Parse(data[0]["Level"][0].ToString());
// 새롭게 추가한 컬럼 이름 NewData 일때
if (data[0]["NewData"][0].ToString() == null)
{
   NewData = 디폴트값
}
else
{
   NewData = int.Parse(data[0]["NewData"][0].ToString());
}

이런 코드가 맞나요? SDK 가이드를 보고 있는데 제가 말한 컬럼을 추가한 경우에 해당 데이터가 공란이 생긴부분에 대한 예외처리 코드 방법을 알고 싶습니다.

안녕하세요 개발자님,
기존 유저의 경우 데이터를 받을 때에는 json에 NewData라는 값이 존재하지 않기 때문에 json으로 접근을 하여도 찾을 수 없습니다.
따라서 해당 값을 들어가기 전에 NewData라는 key값이 존재하는지 확인을 해야합니다.

코드는 아래와 같습니다.

if(data[0].ContainsKey("NewData") == false)
{
}

아 그렇다면 처음에 키값으로 조회해서 없다면 로컬에서 변수에다 디폴트값을 넣어주고 나중에 값을 업데이트할때는 기존에 하던 방식대로
param.Add와 Backend.GameData.Update를 통해서 최신화 시켜주면 되는건가요?

네, 맞습니다.
말씀해 주신 것과 같이 최신화 시켜 이용해 주시면 됩니다. :D