- Adds knex.js to manage database schema changes systematically. - Creates an initial migration file based on `hyungi_schema_v2.sql` to represent the current database state. - Adds npm scripts (`db:migrate`, `db:rollback`, etc.) for easy execution of migration tasks. - Archives legacy SQL files and old migration scripts into the `db_archive/` directory to prevent confusion and clean up the project structure.
23 lines
1000 B
SQL
23 lines
1000 B
SQL
-- 010_add_project_status.sql
|
|
-- 프로젝트 테이블에 활성화/비활성화 상태 필드 추가
|
|
|
|
-- 프로젝트 상태 필드 추가
|
|
ALTER TABLE projects
|
|
ADD COLUMN is_active BOOLEAN DEFAULT TRUE COMMENT '프로젝트 활성화 상태 (TRUE: 활성, FALSE: 비활성)';
|
|
|
|
-- 프로젝트 완료일 필드 추가 (납품일)
|
|
ALTER TABLE projects
|
|
ADD COLUMN completed_date DATE NULL COMMENT '프로젝트 완료일 (납품일)';
|
|
|
|
-- 프로젝트 상태 필드 추가 (진행상태)
|
|
ALTER TABLE projects
|
|
ADD COLUMN project_status ENUM('planning', 'active', 'completed', 'cancelled') DEFAULT 'active' COMMENT '프로젝트 진행 상태';
|
|
|
|
-- 기존 프로젝트들을 모두 활성 상태로 설정
|
|
UPDATE projects SET is_active = TRUE WHERE is_active IS NULL;
|
|
|
|
-- 인덱스 추가 (성능 최적화)
|
|
CREATE INDEX idx_projects_is_active ON projects(is_active);
|
|
CREATE INDEX idx_projects_status ON projects(project_status);
|
|
CREATE INDEX idx_projects_completed_date ON projects(completed_date);
|