연락처 관리를 위한 SQLite 데이터베이스 구축

SQLiteBeginner
지금 연습하기

소개

이번 챌린지에서는 고객의 연락처 정보를 저장하기 위한 SQLite 데이터베이스를 구축합니다. 여러분의 목표는 ~/project 디렉토리에 customers.db 데이터베이스 파일을 만들고, 그 안에 customers 테이블을 설계하여 생성하는 것입니다.

테이블 구성 요소로는 id (INTEGER PRIMARY KEY), name (TEXT), email (TEXT) 컬럼을 정의해야 합니다. 특히 중복된 이메일 주소가 입력되지 않도록 email 컬럼에는 UNIQUE 제약 조건을 설정해야 합니다. 이번 과제에서는 sqlite3 쉘을 사용하여 CREATE TABLE 문과 같은 SQL 명령어를 실행하고, .schema customers 명령어로 테이블 구조가 올바르게 생성되었는지 확인하는 과정을 거치게 됩니다.

이 콘텐츠는 챌린지 형식으로 제공됩니다. 가이드에 따라 학습하는 일반 실습과 달리, 스스로의 힘으로 과제를 해결해야 합니다. 챌린지는 다소 난이도가 있을 수 있지만, 어려움을 겪는다면 Labby 와 상담하거나 모범 답안을 확인해 보세요. 통계에 따르면 이 챌린지는 초급 수준이며, 95%의 통과율과 94%의 긍정적인 평가를 기록하고 있습니다.

연락처 관리를 위한 SQLite 데이터베이스 구축

고객 정보를 저장하기 위한 데이터베이스 테이블을 설계하세요.

과제

  • customers.db 데이터베이스 안에 id, name, email 컬럼을 가진 customers라는 이름의 테이블을 생성하세요. id 컬럼은 기본 키 (Primary Key) 여야 합니다.
  • 각 고객이 고유한 이메일 주소를 가질 수 있도록 customers 테이블의 email 컬럼에 UNIQUE 제약 조건을 추가하세요.

요구 사항

  1. ~/project 디렉토리에 위치한 customers.db SQLite 데이터베이스에 접속합니다.
  2. CREATE TABLE 문을 사용하여 customers 테이블을 생성합니다.
  3. id 컬럼은 INTEGER 타입이며 PRIMARY KEY여야 합니다.
  4. nameemail 컬럼은 TEXT 타입이어야 합니다.
  5. email 컬럼에 UNIQUE 제약 조건을 적용합니다.
  6. 모든 SQL 명령어는 sqlite3 쉘 내부에서 실행되어야 합니다.

예시

테이블을 성공적으로 생성한 후, PRAGMA table_info(customers); 명령어를 실행하면 다음과 같은 결과가 출력되어야 합니다.

0|id|INTEGER|0||1
1|name|TEXT|0||0
2|email|TEXT|0||0

힌트

  • 데이터베이스에 접속하려면 sqlite3 customers.db 명령어를 사용하세요.
  • 새로운 테이블을 만들 때는 CREATE TABLE 문을 사용합니다.
  • PRIMARY KEY 제약 조건은 id 컬럼이 각 행을 고유하게 식별하도록 보장합니다.
  • UNIQUE 제약 조건은 email 컬럼의 모든 값이 서로 중복되지 않도록 보장합니다.
  • 테이블 구조를 확인하려면 .schema customers 명령어를 사용하세요.
✨ 솔루션 확인 및 연습

요약

이번 챌린지에서는 고객 정보를 저장하기 위해 customers.db라는 이름의 SQLite 데이터베이스를 생성했습니다. 주요 과제는 id (INTEGER PRIMARY KEY), name (TEXT), email (TEXT) 컬럼으로 구성된 customers 테이블을 설계하고 구현하는 것이었습니다.

학습의 핵심 포인트는 제약 조건의 활용이었습니다. 특히 id 컬럼을 기본 키로 설정하고, UNIQUE 제약 조건을 통해 email 컬럼의 고유성을 보장하는 방법을 익혔습니다. 마지막으로 .schema customers 명령어를 사용하여 테이블이 의도한 구조대로 성공적으로 생성되었는지 확인하며 마무리했습니다.