인프런 커뮤니티 질문&답변

sondo9185님의 프로필 이미지
sondo9185

작성한 질문수

[2024 최신] [코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

색상정보 DB에 넣기 과정중에서 id문제가 생겼습니다

작성

·

287

0

영상을 보면서 따라가던 중에

final colors = await database.getCategoryColors();

  if (colors.isEmpty) {
    for (String hexCode in DEFAULT_COLORS) {
      await database.createCategoryColor(
        CategoryColorsCompanion(
          hexCode: Value(hexCode),
        ),
      );
    }
  }

  print(await database.getCategoryColors());

이 부분을 입력하고서 실행을 해보니까

InvalidDataException 오류가 발생했습니다.

id값은 필수이지만 존재하지 않는다고 나옵니다.

category_color.dart 와 schedule.dart 파일 모두 integer().autoIncrement()(); 로 해놨습니다.

이런 경우에는 어떻게 해야할까요?

오류 설명 내용입니다

InvalidDataException (InvalidDataException: Sorry, CategoryColorsCompanion(id: Value.absent(), hexCode: Value(F44336), rowid: Value.absent()) cannot be used for that because: • id: This value was required, but isn't present )

답변 1

0

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

안녕하세요!

테이블 형태를 변경하기 전에 데이터가 입력돼있을 수 있습니다.

에뮬레이터/시뮬레이터에서 앱을 삭제한 후 다시 실행 해보시겠어요?

그래도 안되면 다시 질문 부탁드립니다.

감사합니다!

sondo9185님의 프로필 이미지
sondo9185
질문자

에뮬레이터/시뮬레이터에서 앱을 uninstall을 하고서 다시 해봐도 문제가 여전히 발생합니다

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

말 그대로 필수인 값을 넣지 않았다는 뜻인데 강의를 그대로 따라오셨다면 autoIncrement() 설정으로 인해 자동으로 설정돼야하는 부분입니다. 테이블 생성할때 autoIncrement() 함수를 적절히 잘 추가 하셨는지 확인해주세요.

sondo9185님의 프로필 이미지
sondo9185

작성한 질문수

질문하기