<aside> ๐Ÿ‘‰ [database naming convention]

  1. ์ด๋ฆ„์€ snake case๋ฅผ ๋”ฐ๋ฅธ๋‹ค.
  2. ์†์„ฑ๋ช…์€ ํ…Œ์ด๋ธ” ๋ช…์„ ์ œ์™ธํ•˜๊ณ , ์†์„ฑ์˜ ์˜๋ฏธ๊ฐ€ ๋ช…ํ™•ํžˆ ๋“œ๋Ÿฌ๋‚˜๋„๋ก ํ•œ๋‹ค.
  3. ํ…Œ์ด๋ธ”์ด ํ•˜๋‚˜์˜ Primary Key๋ฅผ ๊ฐ€์ง„๋‹ค๋ฉด, ์†์„ฑ์˜ ์ด๋ฆ„์€ 'id'๋กœ ํ•œ๋‹ค.
  4. ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”์˜ id๋ฅผ ์ฐธ์กฐํ•˜๋Š” FK ์†์„ฑ์˜ ์ด๋ฆ„์€ '์ฐธ์กฐํ…Œ์ด๋ธ”๋ช…_id'๋กœ ํ•œ๋‹ค.

[์ˆœ์„œ ๊ทœ์น™] ๊ธฐ๋ณธ์ ์œผ๋กœ ๊ด€๊ณ„ํ˜• ๋ชจ๋ธ์—์„œ ์—ด(Column)์˜ ์ˆœ์„œ๋Š” ์˜๋ฏธ๊ฐ€ ์—†์Œ. ๊ทธ๋Ÿฌ๋‚˜, ๋ฌผ๋ฆฌ์ ์ธ ํ˜•ํƒœ๋กœ ์ƒ์„ฑ๋˜์–ด ๊ด€๋ฆฌ๋  ๋•Œ์—๋Š” ๋ณด๋‹ค ํšจ์œจ์ ์ธ ์ €์žฅ๊ณต๊ฐ„์˜ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•ด ๋‹ค์Œ ์ˆœ์„œ์— ๋”ฐ๋ผ ์šฐ์„ ์ˆœ์œ„๋ฅผ ๊ฒฐ์ •ํ•จ โ–ˆย ย ย  Primary Key๊ฐ€ ์šฐ์„ ํ•จ โ–ˆย ย ย  Primary Key๋‚ด์—์„œ๋Š” Index ์˜๋ฏธ์— ๋”ฐ๋ผ ์ˆœ์„œ๋ฅผ ๊ฒฐ์ •ํ•จ โ–ˆย ย ย  Not Null Columns์ด ์šฐ์„ ํ•จ ย  โ–ˆย ย ย  Not Null Columns ๋‚ด์—์„œ๋Š” Foreign Key, Attributes ์ˆœ์„œ๋กœ ํ•จ โ–ˆย ย ย  Null Columns ๋‚ด์—์„œ๋Š” ๋‹ค์Œ์˜ ๊ทœ์น™์— ๋”ฐ๋ผ ์ˆœ์„œ๋ฅผ ๊ฒฐ์ •ํ•จ โ–ˆย ย ย  Fixed Length Columns์ด ์šฐ์„ ํ•จ(Date,Number,Char์ˆœ) โ–ˆย ย ย  Smaller Length Column์ด ์šฐ์„ ํ•จ

</aside>


๐Ÿ”ท ERD Cloud

Team1

๐Ÿ”ถ SQL ํŒŒ์ผ

ddl.sql

DDL

tb_category - ์นดํ…Œ๊ณ ๋ฆฌ

CREATE TABLE `tb_category` (
	`id`	bigint auto_increment NOT NULL COMMENT '์นดํ…Œ๊ณ ๋ฆฌ ์•„์ด๋””',
	`parent_id`	bigint	NULL	COMMENT '์ƒ์œ„ ์นดํ…Œ๊ณ ๋ฆฌ ์•„์ด๋””',
	`name`	varchar(255)	NOT NULL	COMMENT '์นดํ…Œ๊ณ ๋ฆฌ ์ด๋ฆ„',
	`show_flag`	tinyint	NOT NULL	DEFAULT 1	COMMENT '์‚ฌ์šฉ 1, ๋ฏธ์‚ฌ์šฉ 0',
	`depth`	int	NOT NULL	DEFAULT 1	COMMENT '๊นŠ์ด',
	`orders`	int	NOT NULL	DEFAULT 1	COMMENT '๊ฐ™์€ ๊นŠ์ด ๋‚ด ์ˆœ์„œ',
	`register_date` timestamp NOT NULL DEFAULT now() COMMENT '๋“ฑ๋ก์ผ์‹œ',
	`update_flag`	tinyint	NULL	DEFAULT 0	COMMENT '์ˆ˜์ • 1, ์ˆ˜์ •์—†์Œ 0',
	`update_date`	timestamp	NULL	COMMENT '์ˆ˜์ •์ผ์‹œ',
	`user_id`	bigint	NULL	COMMENT '์ˆ˜์ •ํ•œ ํšŒ์› ์•„์ด๋””',
    PRIMARY KEY(id),
    Foreign Key (parent_id) REFERENCES tb_category(id),
    Foreign Key (user_id) REFERENCES tb_user(id)
);

tb_content_category - ์นดํ…Œ๊ณ ๋ฆฌ_์ฝ˜ํ…์ธ 

CREATE TABLE `findContentsAndImageByContentId` (
	`id`	bigint auto_increment	NOT NULL COMMENT '์ฝ˜ํ…์ธ _์นดํ…Œ๊ณ ๋ฆฌ ์•„์ด๋””',
	`category_id`	bigint	NOT NULL	COMMENT '์นดํ…Œ๊ณ ๋ฆฌ ์•„์ด๋””',
	`content_id`	bigint	NOT NULL	COMMENT '์ฝ˜ํ…์ธ  ์•„์ด๋””',
    PRIMARY key(id),
    Foreign Key (category_id) REFERENCES tb_category(id),
    Foreign Key (content_id) REFERENCES tb_content(id)
);

tb_image - ์ด๋ฏธ์ง€ํŒŒ์ผ

CREATE TABLE `tb_image` (
	`id`				bigint 	auto_increment	NOT NULL,
	`content_id`		bigint 				NULL,
	`extension`			varchar(255)		NULL,
	`original_name`		varchar(255)		NULL,
	`saved_name`		varchar(255)		NULL,
	`thumb_name`		varchar(255)		NULL,
	`original_path`		varchar(255)		NULL,
	`saved_path`		varchar(255)		NULL,
	`thumb_path`		varchar(255)		NULL,
	PRIMARY key(id)
);

tb_content - ์ฝ˜ํ…์ธ