ModakBul
  • 모닥불 프로젝트 보고서
  • 프로젝트 요약
  • 프로젝트 개요
    • 추진 배경 및 필요성
    • 프로젝트 내용
    • 구현 요구사항
    • 팀 구성 및 개발환경
    • 프로젝트 관리 체계
    • 프로젝트 일정 관리
  • 기능 명세
    • 요구사항 목록
    • DB 요구사항
    • 기능 요구사항
    • 기타 요구사항
  • 데이터베이스
    • 구조 설계
    • 테이블 명세
      • 태그 관련 테이블
      • 게시물 관련 테이블
      • 투표 관련 테이블
      • 기타 테이블
  • 백엔드 API
    • API 개요
    • API 명세
      • Template API
      • Board API
      • Auth API
      • Vote API
      • Search API
      • Admin API
      • Analysis API
  • 프론트엔드 & UI
    • 전체 인터페이스 구조
    • 인터페이스 명세
      • Main Page
      • Header & Side Bar
      • Intro Page
      • Post Page
      • Vote Page
      • Analysis Page
      • Admin Page
      • Login Page
  • 프로그램 배포
    • 프로그램 개요
    • 주요 기능
    • 구현 결과물 배포
  • 마무리
    • References
Powered by GitBook
On this page
  • 투표 목록 테이블
  • 투표 질문 테이블
  • 투표 선택지 테이블
  • 사용자 투표 참여 테이블

Was this helpful?

  1. 데이터베이스
  2. 테이블 명세

투표 관련 테이블

투표 목록 테이블

투표 데이터를 관리하는 테이블이다

PK

AI

FK

NULL

논리적 명칭

물리적 명칭

타입

True

True

투표 아이디

vote_id

INT

True

True

사용자 아이디

user_id

VARCHAR

투표 제목

vote_title

VARCHAR

투표 내용

vote_content

VARCHAR

시작 날짜

start_date

DATETIME

마감 날짜

end_date

DATETIME

첨부파일 경로

vote_file_path

VA

CREATE TABLE IF NOT EXISTS vote(
vote_id INT NOT NULL AUTO_INCREMENT,
user_id VARCHAR(20) NULL,
vote_title VARCHAR(100) NOT NULL,
vote_content VARCHAR(10000) NOT NULL,
start_date DATETIME NOT NULL DEFAULT NOW(),
end_date DATETIME NOT NULL,
PRIMARY KEY(vote_id),
FOREIGN KEY(user_id) REFERENCES user(user_id) ON DELETE SET NULL ON UPDATE CASCADE
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

투표 질문 테이블

각 투표의 질문 목록을 관리하는 테이블이다.

PK

AI

FK

NULL

논리적 명칭

물리적 명칭

타입

True

True

질문 아이디

que_id

INT

True

투표 아이디

vote_id

INT

질문

que

VARCHAR

질문 타입

que_type

TINYINT

CREATE TABLE IF NOT EXISTS vote_que(
que_id INT NOT NULL AUTO_INCREMENT,
vote_id INT NOT NULL,
que VARCHAR(100) NOT NULL,
que_type TINYINT NOT NULL,
PRIMARY KEY(que_id),
FOREIGN KEY(vote_id) REFERENCES vote(vote_id) ON DELETE CASCADE ON UPDATE CASCADE
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

투표 선택지 테이블

각 투표의 질문 목록을 관리하는 테이블이다.

PK

AI

FK

NULL

논리적 명칭

물리적 명칭

타입

True

True

선택지 아이디

select_id

INT

True

질문 아이디

que_id

INT

선택지 내용

select_content

VARCHAR

CREATE TABLE IF NOT EXISTS vote_select(
select_id INT NOT NULL AUTO_INCREMENT,
que_id INT NOT NULL,
select_content VARCHAR(100) NOT NULL,
PRIMARY KEY(select_id),
FOREIGN KEY(que_id) REFERENCES vote_que(que_id) ON DELETE CASCADE ON UPDATE CASCADE
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
© 2019 GitHub, Inc.

사용자 투표 참여 테이블

각 투표의 질문 목록을 관리하는 테이블이다.

PK

AI

FK

NULL

논리적 명칭

물리적 명칭

타입

True

True

답변 아이디

answer_id

INT

True

투표 아이디

vote_id

INT

True

질문 아이디

que_id

INT

True

선택지 아이디

select_id

INT

True

True

사용자 아이디

user_id

VARCHAR

True

답변

answer

VARCHAR

CREATE TABLE IF NOT EXISTS vote_user_answer(
answer_id INT NOT NULL AUTO_INCREMENT,
vote_id INT NOT NULL,
que_id INT NOT NULL,
select_id INT NOT NULL,
user_id VARCHAR(20) NULL,
answer VARCHAR(500) NULL DEFAULT NULL,
PRIMARY KEY(answer_id),
FOREIGN KEY(vote_id) REFERENCES vote(vote_id) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY(que_id) REFERENCES vote_que(que_id) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY(select_id) REFERENCES vote_select(select_id) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY(user_id) REFERENCES user(user_id) ON DELETE SET NULL ON UPDATE CASCADE
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
Previous게시물 관련 테이블Next기타 테이블

Last updated 5 years ago

Was this helpful?