(스킬, 링크, 프로젝트, 활동)


배경 (Background)


설계 및 기술 자료 (Architecture and Technical Documentation)

<aside> 💡

🤔 이 섹션은 왜 필요한가요?

데이터베이스 스키마 (ERD)

CREATE TABLE `users` (
	`id`	INT	NOT NULL,
	`account_id`	INT	NOT NULL,
	`name`	VARCHAR(30)	NOT NULL,
	`email`	VARCHAR(255)	NOT NULL	COMMENT 'UK',
	`phone_number`	VARCHAR(15)	NULL,
	`lined_number`	VARCHAR(15)	NULL,
	`company`	VARCHAR(20)	NULL,
	`department`	VARCHAR(20)	NULL,
	`position`	VARCHAR(20)	NULL,
	`profile_image_url`	VARCHAR(2048)	NULL,
	`description`	TEXT	NULL,
	`ai_card_image_url`	VARCHAR(2048)	NULL,
	`created_at`	TIMESTAMP	NOT NULL,
	`updated_at`	TIMESTAMP	NULL,
	`deleted_at`	TIMESTAMP	NULL
);

CREATE TABLE `skill` (
	`id`	INT	NOT NULL,
	`name`	VARCHAR(100)	NOT NULL
);

CREATE TABLE `user_skill` (
	`id`	INT	NOT NULL,
	`user_id`	INT	NOT NULL	COMMENT 'uk: (user_id, skill_id)',
	`skill_id`	INT	NOT NULL
);

CREATE TABLE `link` (
	`id`	INT	NOT NULL,
	`user_id`	INT	NOT NULL,
	`title`	VARCHAR(100)	NULL,
	`link`	VARCHAR(2048)	NOT NULL,
	`created_at`	TIMESTAMP	NOT NULL,
	`updated_at`	TIMESTAMP	NULL,
	`deleted_at`	TIMESTAMP	NULL
);

CREATE TABLE `project` (
	`id`	INT	NOT NULL,
	`user_id`	INT	NOT NULL	COMMENT 'index',
	`name`	VARCHAR(100)	NOT NULL,
	`content`	VARCHAR(2000)	NULL,
	`start_date`	DATE	NOT NULL,
	`end_date`	DATE	NULL,
	`is_progress`	TINYINT(1)	NOT NULL	DEFAULT 0,
	`created_at`	TIMESTAMP	NOT NULL,
	`updated_at`	TIMESTAMP	NULL,
	`deleted_at`	TIMESTAMP	NULL
);

CREATE TABLE `activity` (
	`id`	INT	NOT NULL,
	`user_id`	INT	NOT NULL	COMMENT 'index',
	`name`	VARCHAR(50)	NOT NULL,
	`grade`	VARCHAR(50)	NULL,
	`organization`	VARCHAR(50)	NOT NULL,
	`content`	VARCHAR(2000)	NULL,
	`win_date`	DATE	NOT NULL,
	`created_at`	TIMESTAMP	NOT NULL,
	`updated_at`	TIMESTAMP	NULL,
	`deleted_at`	TIMESTAMP	NULL
);

API 명세 (API Specifications)


내 스킬 읽기 API