728x90

RDB๐Ÿ—‚๏ธ 16

SQL : ๋ฐ์ดํ„ฐ ๋ณ€๊ฒฝ

์ถœ์ฒ˜ : ๋‚ด์ผ๋ฐฐ์›€์บ ํ”„ CREATE : ํ…Œ์ด๋ธ” ์ƒ์„ฑ SQL CREATE TABLE users (id INT, name CHAR(4), age INT); + DESC : ํ…Œ์ด๋ธ”์— ๋Œ€ํ•œ ์„ค๋ช…์„ ์กฐํšŒ DESC users; INSERT : ํ…Œ์ด๋ธ”์— ๋ฐ์ดํ„ฐ ์‚ฝ์ž… INSERT INTO ํ…Œ์ด๋ธ” [(์—ด1, ์—ด2, ...)] VALUES (๊ฐ’1, ๊ฐ’2, ...) - ์—ด์„ ์ƒ๋žตํ•  ์ˆ˜ ์žˆ๋‹ค : VALUES์—์„œ ์ˆœ์„œ์™€ ๊ฐœ์ˆ˜๋ฅผ ๋งž์ถฐ์•ผ ํ•œ๋‹ค. - ์ผ๋ถ€ ์—ด๋งŒ ๋ช…์‹œํ•˜๊ณ  ๊ทธ ์—ด์—๋งŒ ๊ฐ’์„ ์‚ฝ์ž…ํ•  ์ˆ˜ ์žˆ๋‹ค.(๋‹ค๋งŒ, ๋ช…์‹œํ•˜์ง€ ์•Š์€ ์—ด์—๋Š” Null๊ฐ’ ์‚ฝ์ž…) - ์—ด์˜ ์ˆœ์„œ๋ฅผ ๋ฐ”๊ฟ”์„œ ๋ช…์‹œํ•œ ๊ฒฝ์šฐ์—๋Š” ์—ด์˜ ์ˆœ์„œ์™€ ๊ฐ’์˜ ์ˆœ์„œ๊ฐ€ ๋ฐ”๋€Œ์–ด๋„ ์ƒ๊ด€์—†๋‹ค AUTO_INCREMENT ์ž๋™์œผ๋กœ ๊ฐ’์ด ์ฆ๊ฐ€ํ•ด์•ผํ•˜๋Š” ์—ด์— ์‚ฌ์šฉํ•œ๋‹ค, ์ฃผ๋กœ id, ๋ฐ˜๋“œ์‹œ PRIMARY K..

SQL : ๋ฐ์ดํ„ฐ ์กฐํšŒ

์ถœ์ฒ˜ : ๋‚ด์ผ๋ฐฐ์›€์บ ํ”„ SELECT ~ FROM USE USE ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค_์ด๋ฆ„; Select ๋ฌธ์˜ ๊ธฐ๋ณธ ํ˜•์‹ SELECT select_expr [FROM table_references] [WHERE where_condision] [GROUP BY {col_name | expr | position}] [HAVING where_condition] [ORDER BY {col_name | expr | position}] [LIMIT {[offset,] row_count | row_count OFFSET offset}] [] ๋ถ€๋ถ„์€ ์ƒ๋žต์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ํ•˜์ง€๋งŒ ์ˆœ์„œ๋Š” ์ง€์ผœ์•ผ ํ•œ๋‹ค. SELECT ~ FROM SELECT ์—ด_์ด๋ฆ„ FROM ํ…Œ์ด๋ธ”_์ด๋ฆ„ from ๋’ค ํ…Œ์ด๋ธ”๊ณผ ๊ทธ ์ค‘ ์—ด_์ด๋ฆ„์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ์ฟผ๋ฆฌ๋ฌธ, ๋ชจ..

๊ฒŒ์‹œํŒ์˜ ๋Œ“๊ธ€์„ ํฌํ•จํ•˜๊ณ  ์žˆ๋Š” ๊ฒŒ์‹œ๋ฌผ์„ ๋Œ“๊ธ€ ์‚ญ์ œ ์—†์ด ๊ฒŒ์‹œ๋ฌผ๋งŒ ์‚ญ์ œํ•˜๋Š” ๊ฒฝ์šฐ, ์˜ˆ์™ธ Referential integrity constraint violation : 2) SQL

๋ถ€๋ชจ(๊ฒŒ์‹œ๋ฌผ) -> ์ž์‹(๋Œ“๊ธ€) ๊ด€๊ณ„๋กœ DB๊ฐ€ ์„ค์ •๋˜์–ด์žˆ์„ ๋•Œ, ๋ถ€๋ชจ ์—”ํ‹ฐํ‹ฐ๋ฅผ ์ง€์šธ ๋•Œ ๋‚จ๊ฒจ์ง€๋Š” ์ž์‹ ์—”ํ‹ฐํ‹ฐ๊ฐ€ ์žˆ๋‹ค๋ฉด ๊ทธ ์ž์‹ ์—”ํ‹ฐํ‹ฐ๋ฅผ ๊ณ ์•„ ๊ฐ์ฒด๋กœ ๋ณธ๋‹ค. ์ด๋ฅผ ๊ทธ๋Œ€๋กœ ๋‘˜ ๊ฒฝ์šฐ Referential integrity constraint violation SQL ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค. DB ๊ด€์ ์—์„œ Cascade ์†์„ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ด ์˜ˆ์™ธ์— ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ๋‹ค. 1. ํ…Œ์ด๋ธ” ์ƒ์„ฑ ์‹œ CREATE TABLE ์ฐธ์กฐ ํ…Œ์ด๋ธ” ( ... CONSTRAINT ์ฐธ์กฐํ‚ค FOREIGN KEY(๊ธฐ๋ณธํ‚ค) REFERENCES ๊ธฐ๋ณธ ํ…Œ์ด๋ธ”(ํ‚ค๋ณธํ‚ค) ON DELETE CASCADE ... ) 2. ALTER TABLE AlTER TABLE ์ฐธ์กฐ ํ…Œ์ด๋ธ”์ด๋ฆ„ ADD CONSTRAINT ์ฐธ์กฐํ‚ค FOREIGN KEY(๊ธฐ๋ณธํ‚ค) REFERENCES ๊ธฐ..

SQL ์ œ์•ฝ์กฐ๊ฑด

AUTO_INCREMENT : ์ปฌ๋Ÿผ์˜ ๊ณ ์œ ๋ฒˆํ˜ธ๋ฅผ 1์”ฉ ์ฆ๊ฐ€์‹œ์ผœ ๋ถ€์—ฌํ•˜์—ฌ ์ƒ์„ฑํ•ด์ค๋‹ˆ๋‹ค. (์ด์šฉํ•˜๋ ค๋ฉด ํ•ด๋‹น ์ปฌ๋Ÿผ์— value๋ฅผ ์ฃผ์ง€ ์•Š์œผ๋ฉด ๋œ๋‹ค) CREATE TABLE ํ…Œ์ด๋ธ”์ด๋ฆ„ ( ํ•„๋“œ์ด๋ฆ„ ํ•„๋“œํƒ€์ž… AUTO_INCREMENT, // id bigint AUTO_INCREMENT, ... ); NOT NULL : NULL ๊ฐ’์„ ์ €์žฅํ•  ์ˆ˜ ์—†๋‹ค. UNIQUE : ํ•ด๋‹น ํ•„๋“œ๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ๊ฐ’์„ ๊ฐ€์ ธ์•ผํ•œ๋‹ค. PRIMARY KEY(๊ธฐ๋ณธ ํ‚ค) : ๋ฐ์ดํ„ฐ์˜ ์ค‘๋ณต์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด / ๊ธฐ๋ณธ ํ‚ค ~ ์ธ๋ฑ์Šค๋ฅผ ๋งŒ๋“ค์–ด ๋ฐ์ดํ„ฐ ๋ฐ˜ํ™˜ ์†๋„๋ฅผ ํ–ฅ์ƒํ•˜๊ธฐ ์œ„ํ•ด ๊ธฐ๋ณธ ํ‚ค ํ•„๋“œ๊ฐ€ NOT NULL๊ณผ UNIQUE ์ œ์•ฝ์กฐ๊ฑด์˜ ํŠน์ง•์„ ๋ชจ๋‘ ๊ฐ€์ง€๊ฒŒ ๋œ๋‹ค. ex) create table member ( mem_id char(8) not null pri..

SQL ๊ด€๋ จ ๋‹จ์–ด ์ •๋ฆฌ

DDL : Data Definition Language, ํ…Œ์ด๋ธ”์ด๋‚˜ ๊ด€๊ณ„์˜ ๊ตฌ์กฐ ์ƒ์„ฑ 1) CREATE - ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฐ ํ…Œ์ด๋ธ” ์ƒ์„ฑ (ํ•„๋“œ? ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์„ธ๋กœ ๋ฐฉํ–ฅ์œผ๋กœ ํ‘œ์‹œํ•œ ์ปฌ๋Ÿผ(์—ด)) CREATE DATABASE ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ด๋ฆ„; CREATE TABLE ํ…Œ์ด๋ธ”์ด๋ฆ„ ( ํ•„๋“œ์ด๋ฆ„1 ํ•„๋“œํƒ€์ž…1, ํ•„๋“œ์ด๋ฆ„2 ํ•„๋“œํƒ€์ž…2, ... ); 2) ALTER - ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ํ…Œ์ด๋ธ”์˜ ๋‚ด์šฉ์„ ์ˆ˜์ • ALTER TABLE ํ…Œ์ด๋ธ”์ด๋ฆ„ ADD ํ•„๋“œ์ด๋ฆ„ ํ•„๋“œํƒ€์ž…; ALTER TABLE ํ…Œ์ด๋ธ”์ด๋ฆ„ DROP ํ•„๋“œ์ด๋ฆ„; ALTER TABLE ํ…Œ์ด๋ธ”์ด๋ฆ„ MODIFY COLUMN ํ•„๋“œ์ด๋ฆ„ ํ•„๋“œํƒ€์ž… ๋ณ€๊ฒฝ์‚ฌํ•ญ; ALTER TABLE ํ…Œ์ด๋ธ”์ด๋ฆ„ ALTER COLUMN ํ•„๋“œ์ด๋ฆ„ ํ•„๋“œํƒ€์ž… ๋ณ€๊ฒฝ์‚ฌํ•ญ; 3) DROP - ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€..

728x90