-- 186_study_questions.sql (1/5) -- study_topic 아래 4지선다 문제은행. 기사시험 필기 대비. -- -- 핵심: -- - study_topic_id 1:N (한 주제에 N 문제, 워크스페이스 컨테이너 PR-1 연장). -- - subject/scope 는 느슨한 분류 (강한 enum 미사용). 자유 텍스트 + 자동완성은 후속. -- - correct_choice 는 SMALLINT CHECK 1~4. 객관식 외 형식(주관식·OX·다답) 은 본 PR 범위 밖. -- - is_active 는 향후 출제 제외 토글 (예: 잘못 입력한 문제 임시 비활성). soft delete(deleted_at)와 별개. -- - polymorphic study_topic_items 영구 금지 (PR-1 가드레일). 자산 타입별 조인 테이블 없음 — 본 테이블은 study_topic_id 직접 FK. CREATE TABLE IF NOT EXISTS study_questions ( id BIGSERIAL PRIMARY KEY, user_id BIGINT NOT NULL REFERENCES users(id) ON DELETE CASCADE, study_topic_id BIGINT NOT NULL REFERENCES study_topics(id) ON DELETE CASCADE, question_text TEXT NOT NULL, choice_1 TEXT NOT NULL, choice_2 TEXT NOT NULL, choice_3 TEXT NOT NULL, choice_4 TEXT NOT NULL, correct_choice SMALLINT NOT NULL CHECK (correct_choice BETWEEN 1 AND 4), subject VARCHAR(120), scope VARCHAR(200), exam_name VARCHAR(120), exam_round VARCHAR(120), explanation TEXT, source_note TEXT, is_active BOOLEAN NOT NULL DEFAULT TRUE, created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(), updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW(), deleted_at TIMESTAMPTZ );