๋ชฉ๋กKITRI (108)

๐Ÿ’ป

Oracle DBMS ๋ฐ SQL - ์‹œํ€€์Šค(SEQUENCE) / ROWNUM, TRANSACTION, ์ธ๋ฑ์Šค(INDEX)

--DDL : ํ…Œ์ด๋ธ”, ์‹œํ€€์Šค, ๋ทฐ๊ฐ€ ํ•ด๋‹น๋œ๋‹ค. --8. SEQUENCE : ์—ฐ์†์ ์ธ ์ˆซ์ž ๊ฐ’์„ ์ž๋™์œผ๋กœ ์ฆ๊ฐ€(์˜ˆ: ์ˆ˜ํ—˜๋ฒˆํ˜ธ) --CREATE SEQUENCE msg_num_seq; --1๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด์„œ 1์”ฉ ์ฆ๊ฐ€(์ œํ•œ ์—†์Œ). ๋ณดํ†ต ์ด๋ ‡๊ฒŒ ์ž์ฃผ์“ด๋‹ค. --9. TRANSACTION : SQL ์งˆ์˜์–ด ํ•˜๋‚˜์˜ ์ž‘์—…์„ ํŠธ๋žœ์žญ์…˜์ด๋ผ๊ณ  ํ•œ๋‹ค. --9-1) COMMIT : ํ•˜๋‚˜์˜ ํŠธ๋žœ์žญ์…˜ ๊ณผ์ •์„ ์ข…๋ฃŒํ•œ๋‹ค. --9-2) ROLLBACK : ์ด์ „ ์ƒํƒœ๋กœ ๋Œ์•„๊ฐ„๋‹ค. (์ทจ์†Œ) --9-3) SAVEPOINT : ์ค‘๊ฐ„๋‹จ๊ณ„๋กœ ๋˜๋Œ๋ฆฌ๊ธฐ --์šฐ๋ฆฌ๊ฐ€ ํ”„๋กœ๊ทธ๋žจ์„ ์งœ๋ฉด ํ•˜๋“œ๋””์Šคํฌ(์ €์žฅ์žฅ์†Œ)์— ์˜ฌ๋ผ๊ฐ„๋‹ค. --์ปดํŒŒ์ผํ•ด์„œ ์‹คํ–‰ํ•˜๋ฉด ์‹คํ–‰๊ณผ ๋™์‹œ์— RAM(์ฃผ๊ธฐ์–ต์žฅ์น˜)์˜ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์— ์˜ฌ๋ผ๊ฐ„๋‹ค. --์˜ค๋ผํด์—์„œ ํŠน์ •ํ…Œ์ด๋ธ”์„ ์กฐํšŒํ•  ๋•Œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ํ•ด..

KITRI/ORACLE 2020. 4. 20. 13:42
Orarcle DBMS ๋ฐ SQL - ์ œ์•ฝ์กฐ๊ฑด(NOT NULL, UNIQUE, PRIMARY KEY), ๋น„ํ™œ์„ฑ/ํ™œ์„ฑ

-- 6. ์ œ์•ฝ์กฐ๊ฑด(Constraint) -- 6-1) ๋„๋ฉ”์ธ ์ œ์•ฝ์กฐ๊ฑด -- 6-2) ํ‚ค ์ œ์•ฝ์กฐ๊ฑด -- 6-3) ๋ฌด๊ฒฐ์„ฑ ์ œ์•ฝ์กฐ๊ฑด -- 6-4) ์ œ์•ฝ์กฐ๊ฑด ์œ ํ˜• --1) NOT NULL : ํ•ด๋‹น ์ปฌ๋Ÿผ ๊ฐ’์œผ๋กœ NULL์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š์Œ --2) UNIQUE : ํ…Œ์ด๋ธ” ๋‚ด์—์„œ ํ•ด๋‹น ์ปฌ๋Ÿผ ๊ฐ’์€ ํ•ญ์ƒ ์œ ์ผ๋ฌด์ผ(์ค‘๋ณต๊ฐ’ ํ—ˆ์šฉ์•ˆํ•จ)ํ•œ ๊ฐ’, NULL ํ—ˆ์šฉ --3) PRIMARY KEY : ํ•ด๋‹น ์ปฌ๋Ÿผ ๊ฐ’์„ ๋ฐ˜๋“œ์‹œ ์กด์žฌํ•ด์•ผ ํ•˜๊ณ , ์œ ์ผํ•˜๊ฒŒ ํ•ด์•ผํ•œ๋‹ค. (NOT NULL + UNIQUE) --4) CHECK : ์ด ์กฐ๊ฑด์œผ๋กœ ์„ค์ •๋œ ๊ฐ’๋งŒ ์ž…๋ ฅ์„ ํ—ˆ์šฉ --5) FOREIGN KEY : ํ•ด๋‹น ์ปฌ๋Ÿผ์˜ ๊ฐ’์ด ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”์˜ ์ปฌ๋Ÿผ ๊ฐ’์„ ์ฐธ์กฐ. -- ์ปฌ๋Ÿผ์— ์—†๋Š” ๊ฐ’์„ ์ž…๋ ฅํ•˜์ง€ ๋ชปํ•จ --ํ•™์ƒ ํ…Œ์ด๋ธ”์— ๋ ˆ์ฝ”๋“œ ๋„ฃ๊ธฐ --6) ๋น„ํ™œ์„ฑ/ํ™œ์„ฑ, ์‚ญ์ œ/์ถ”๊ฐ€

KITRI/ORACLE 2020. 4. 17. 16:47
Oracle DBMS ๋ฐ SQL - ์„œ๋ธŒ์ฟผ๋ฆฌ(SUBQUERY)

--SubQuery : SELECT ๋ฌธ ๋‚ด์— ๋˜ ๋‹ค๋ฅธ SELECT๋ฌธ์„ ํฌํ•จํ•  ์ˆ˜ ์žˆ๋‹ค. ํฌํ•จ SELECT ์„œ๋ธŒ์ฟผ๋ฆฌ๋ผ๊ณ  ํ•œ๋‹ค. -- 1) ๋‹จ์ผ์—ด/ ๋‹จ์ผํ–‰ (1ํ–‰ 1์—ด) -- 2) ๋‹จ์ผ์—ด/ ๋‹ค์ค‘ํ–‰ (2ํ–‰์ด์ƒ 1์—ด) -- 3) ๋‹ค์ค‘์—ด/ ๋‹จ์ผํ–‰ -- 4) ๋‹ค์ค‘์—ด/ ๋‹ค์ค‘ํ–‰ -- ์ฐธ๊ณ ) SubQuery ์ž‘์„ฑ์„ WHERE์ ˆ ๋˜๋Š” FROM์ ˆ์— ํ•œ๋‹ค. -- Join & SubQuery --์žญ์‚ฌ์›๊ณผ ๊ฐ™์€ ๋ถ€์„œ์— ๊ทผ๋ฌดํ•˜๋Š” ์‚ฌ์›์„ ๊ฒ€์ƒ‰/ ๋ถ€์„œ(๋ถ€์„œ๋ช…, ๋ถ€์„œ์ฝ”๋“œ) --1. ๋ถ€์„œ์ฝ”๋“œ๋ฅผ ์ด์šฉํ•˜๋Š” ๋ฐฉ๋ฒ• --2. ๋ถ€์„œ๋ช…์„ ์ด์šฉํ•˜๋Š” ๋ฐฉ๋ฒ• => Join์„ ํ•ด์•ผํ•œ๋‹ค. --1. ๋‹จ์ผํ–‰ * ๋‹จ์ผํ–‰(1ํ–‰ 1์—ด) WHERE --์‚ฌ์›๋“ค ์ค‘์—์„œ ์—ฐ๋ด‰์ด Jack ์‚ฌ์› ์—ฐ๋ด‰๋ณด๋‹ค ๋งŽ๊ณ , Lex์‚ฌ์›์˜ ์—ฐ๋ด‰๋ณด๋‹ค ์ ๊ฒŒ ๋ฐ›๋Š” ์‚ฌ์› ๊ฒ€์ƒ‰ -- Self Join ์œผ..

KITRI/ORACLE 2020. 4. 14. 14:46
Oracle DBMS ๋ฐ SQL - ์กฐ์ธ(JOIN)

-- JOIN -- RDBMS(Relational DataBase Management System) : ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์ผ๋ จ์˜ ์ •ํ˜•ํ™”๋œ ํ…Œ์ด๋ธ” ๊ตฌ์„ฑ๋œ ๋ฐ์ดํ„ฐ ํ•ญ๋ชฉ๋“ค์˜ ์ง‘ํ•ฉ์ฒด๋กœ์จ, ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ์ ‘๊ทผํ•˜๊ณ  ์กฐํ•ฉ๋  ์ˆ˜ ์žˆ๋‹ค. ์ด๋Ÿฐ ๊ด€๊ณ„๋ฅผ ๋งบ๋Š” ๋ฐฉ๋ฒ•์ด ์กฐ์ธ(์—ฐ๊ฒฐ๊ณ ๋ฆฌ) ์ด๋‹ค. --1. Cross Join : ํ…Œ์ด๋ธ”์„ ์„œ๋กœ ์กฐ๊ฑด์—†์ด ์—ฐ๊ฒฐํ•˜์—ฌ ๋‚˜์—ดํ•œ ๊ฒƒ --107 * 27 = 2889 : ์•„๋ฌด ์˜๋ฏธ์—†๋Š” ๊ฒฐํ•ฉ --2. Equi Join : ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ์กฐ์ธ ๋ฐฉ๋ฒ•์œผ๋กœ ๋Œ€์ƒ์ด ๋˜๋Š” ํ…Œ์ด๋ธ”์— -- ๊ณตํ†ต์ ์œผ๋กœ ์กด์žฌํ•˜๋Š” ์ปฌ๋Ÿผ์˜ ๊ฐ’์ด ์ผ์น˜๋˜๋Š” ํ–‰์„ ์—ฐ๊ฒฐํ•˜์—ฌ ๊ฒฐ๊ณผ๋ฅผ ์ƒ์„ฑ -- WHERE์ ˆ์— ํ…Œ์ด๋ธ”์— ๊ณตํ†ต๋œ ์ปฌ๋Ÿผ์„ ์กฐ์ธ ์กฐ๊ฑด์œผ๋กœ ์ œ์‹œํ•œ๋‹ค. -- ๋ชจํ˜ธ์„ฑ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋™์ผํ•œ ์ปฌ๋Ÿผ์€ ํ…Œ์ด๋ธ”๋ช… ๋ช…์‹œ..

KITRI/ORACLE 2020. 4. 10. 16:41