데이터베이스

단일 테이블 생성 실습 문제와 정답

Pro.Dev 2024. 10. 29. 19:54
반응형

실습 문제와 정답

문제 1: 뉴스 기사 테이블 만들기

상황: 뉴스 웹사이트에서 각 기사 정보를 관리하기 위한 news_article 테이블을 설계하세요. 제목, 내용, 작성 날짜 등의 정보만 필요합니다.

테이블 구조:

  • article_id: 기사 고유 ID (정수형)
  • title: 기사 제목 (문자열, 최대 100자)
  • content: 기사 내용 (긴 문자열)
  • published_date: 작성 날짜 (날짜)

정답:

CREATE TABLE news_article (
    article_id INT PRIMARY KEY,
    title VARCHAR(100),
    content TEXT,
    published_date DATE
);

문제 2: 날씨 기록 테이블 만들기

상황: 기상청에서 각 지역의 일일 날씨 정보를 기록하기 위해 weather_record 테이블을 만들어야 합니다. 날짜별로 기록됩니다.

테이블 구조:

  • record_id: 기록 고유 ID (정수형)
  • location: 지역명 (문자열, 최대 50자)
  • temperature: 온도 (소수점 포함 숫자, 최대 5자리)
  • humidity: 습도 (정수형, % 단위)
  • record_date: 기록 날짜 (날짜)

정답:

CREATE TABLE weather_record (
    record_id INT PRIMARY KEY,
    location VARCHAR(50),
    temperature DECIMAL(5, 2),
    humidity INT,
    record_date DATE
);

문제 3: 영화 정보 테이블 만들기

상황: 영화관에서 상영 중인 영화 정보를 관리하기 위한 movie_info 테이블을 설계하세요. 영화 제목과 감독, 상영 시간 등의 정보를 포함합니다.

테이블 구조:

  • movie_id: 영화 고유 ID (정수형)
  • title: 영화 제목 (문자열, 최대 100자)
  • director: 감독 이름 (문자열, 최대 50자)
  • duration: 상영 시간 (분 단위, 정수형)
  • release_date: 개봉 날짜 (날짜)

정답:

CREATE TABLE movie_info (
    movie_id INT PRIMARY KEY,
    title VARCHAR(100),
    director VARCHAR(50),
    duration INT,
    release_date DATE
);

문제 4: 도서관 도서 관리 테이블 만들기

상황: 도서관에서 보유한 도서 정보를 기록하기 위한 library_book 테이블을 설계하세요. 각 도서의 제목, 저자, 출판연도 등을 관리합니다.

테이블 구조:

  • book_id: 도서 고유 ID (정수형)
  • title: 도서 제목 (문자열, 최대 150자)
  • author: 저자 이름 (문자열, 최대 100자)
  • published_year: 출판 연도 (정수형, 4자리)
  • genre: 장르 (문자열, 최대 50자)

정답:

CREATE TABLE library_book (
    book_id INT PRIMARY KEY,
    title VARCHAR(150),
    author VARCHAR(100),
    published_year INT,
    genre VARCHAR(50)
);

문제 5: 앱 사용자 피드백 테이블 만들기

상황: 모바일 앱에서 사용자들이 제출한 피드백을 관리하기 위해 user_feedback 테이블을 설계하세요. 각 피드백에 대한 간단한 내용과 점수를 기록합니다.

테이블 구조:

  • feedback_id: 피드백 고유 ID (정수형)
  • user_id: 사용자 고유 ID (정수형, 별도 연계 필요 없음)
  • comment: 피드백 내용 (긴 문자열)
  • rating: 점수 (1~5의 정수형)
  • submitted_date: 제출 날짜 (날짜 및 시간)

정답:

CREATE TABLE user_feedback (
    feedback_id INT PRIMARY KEY,
    user_id INT,
    comment TEXT,
    rating INT CHECK (rating BETWEEN 1 AND 5),
    submitted_date DATETIME
);
반응형