๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ(654)
-
[oracle] ํธ๋ฆฌ๊ฑฐ
https://hyejin.tistory.com/119?category=975063 [Database] Transaction๊ณผ Trigger 1. Transaction ํธ๋์ญ์ ์ด๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ํ๋ฅผ ๋ณํ์ํค๋ ํ๋์ ๋ ผ๋ฆฌ์ ๊ธฐ๋ฅ์ ์ํํ๊ธฐ ์ํ ์์ ์ ๋จ์ ๋๋ ํ๊บผ๋ฒ์ ์ํ๋์ด์ผ ํ ์ผ๋ จ์ ์ฐ์ฐ๋ค์ ์๋ฏธํ๋ค. ํธ๋์ญ์ ์ ๋ฐ์ดํฐ๋ฒ ์ด hyejin.tistory.com ํธ๋ฆฌ๊ฑฐ ๊ฐ๋ ์ ์ฌ๊ธฐ์ ํ์ธํ ์ ์๋ค. 1. ํธ๋ฆฌ๊ฑฐ trigger ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์ ๋ ฅ, ์์ , ์ญ์ ์์ ์ด ๋ฐ์ํ๋ฉด ๋ฏธ๋ฆฌ ๋ง๋ค์ด ๋ sql์ ์๋์ผ๋ก ์คํํ๋ ๊ธฐ๋ฅ์ด๋ค. CREATE OR REPLACE TRIGGER ํธ๋ฆฌ๊ฑฐ๋ช BEFORE|AFTER INSERT|UPDATE|DELETE ON ํ ์ด๋ธ [FOR EACH ROW] [WHEN ์กฐ๊ฑด..
2021.10.21 -
[oracle] ํ๋ก์์
1. ํ๋ก์์ procedure ์ฌ๋ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ ์ผ๋ก ์ด๋ค์ง ํ๋์ ์ ๋ฌด๋ฅผ ์คํํ๋ ๊ธฐ๋ฅ์ด๋ค. CREATE OR REPLACE PROCEDURE ํ๋ก์์ ๋ช (๋งค๊ฐ๋ณ์1 ํ์1, ๋งค๊ฐ๋ณ์2 ํ์2 ,...) IS ๋ณ์ ๋ณ์ํ์(ํฌ๊ธฐ); BEGIN SQL ๊ตฌ๋ฌธ; END ํ๋ก์์ ๋ช ; / CREATE OR REPLACE PROCEDURE ํ๋ก์์ ๋ช (๋งค๊ฐ๋ณ์1 ํ์1, ๋งค๊ฐ๋ณ์2 ํ์2 ,...) IS ๋ณ์; CURSOR ์ปค์๋ช IS SELECT SQL ๊ตฌ๋ฌธ; BEGIN SQL ๊ตฌ๋ฌธ; END ํ๋ก์์ ๋ช ; / SET SERVEROUT ON; -> ์๋ฒ์์ ์คํํ ๊ฒฐ๊ณผ๋ฅผ ํ๋ฉด์ ๋ณด์ฌ์ค๋ค. EXEC PR_INS_PNT_INFO('2018'); ํ๋ก์์ ์ 2018 ๋งค๊ฐ๋ณ์ ์ ๋ ฅํ ์คํ SET SERVEROUT OFF..
2021.10.21 -
[oracle] ์ฌ์ฉ์ ๊ธฐ๋ฅ - ํจ์, ์์
1. ํจ์ ํจ์๋ ๋ฐ๋ณต์์ ์ด๋ ๋ณต์กํ ์์ ์ ์ํํ๊ณ ๊ฒฐ๊ณผ๊ฐ์ ๋ฐํํ๋ ๊ธฐ๋ฅ์ ์ํํ๋ค. CREATE OR REPLACE FUNCTION ํจ์๋ช (๋งค๊ฐ๋ณ์1 ํ์1, ๋งค๊ฐ๋ณ์2 ํ์2 ...) RETURN ๋ฐํํ์ IS ๋ณ์ ๋ณ์ํ์(ํฌ๊ธฐ); BEGIN ์คํ SQL ๊ตฌ๋ฌธ INTO ๋ณ์; RETURN (๋ณ์); END ํจ์๋ช ; / * ํจ์ ์์
2021.10.21 -
[oracle] ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ ์ด๋ธ drop ํ ์ด๋ธ ํ ๋ณต๊ตฌํ๋ ๋ฐฉ๋ฒ (FLASHBACK TABLE)
https://hyejin.tistory.com/164?category=975063 [oracle] ํ ์ด๋ธ ๊ด๋ จ ๋ช ๋ น์ด (CREATE TABLE, DESC, RENAME, ALTER TABLE, INDEX, PRIMARY KEY, TRUNCATE TABLE, DROP TABLE) 1. CREATE TABLE CREATE TABLE ํ ์ด๋ธ๋ช ( ํ๋๋ช 1 ๋ฐ์ดํฐํ์1 [์ ์ฝ์กฐ๊ฑด], ํ๋๋ช 2 ๋ฐ์ดํฐํ์2 [์ ์ฝ์กฐ๊ฑด], ... ); ์ ์ฝ์กฐ๊ฑด 1๏ธโฃ PRIMARY KEY : ๋ํ์ฑ์ ๊ฐ์ง๋ ๊ธฐ๋ณธํค๋ฅผ ์ ์ธํ๋ค. ๊ธฐ๋ณธํค๋ UNIQUE + NOT.. hyejin.tistory.com ํ ์ด๋ธ ๊ด๋ จ ๋ช ๋ น์ ์ฌ๊ธฐ์ ์ฐพ์๋ณผ ์๋ ์๋ค. ์ด๋ ๊ฒ ์ญ์ ํด๋ฒ๋ ค์ desc ํด๋ ํ ์ด๋ธ์ ๋ณผ ์ ์๋ค. FLASHBACK TABLE ๋ช ๋ น..
2021.10.21 -
[oracle] ํ ์ด๋ธ ๊ด๋ จ ๋ช ๋ น์ด (CREATE TABLE, DESC, RENAME, ALTER TABLE, INDEX, PRIMARY KEY, TRUNCATE TABLE, DROP TABLE)
1. CREATE TABLE CREATE TABLE ํ ์ด๋ธ๋ช ( ํ๋๋ช 1 ๋ฐ์ดํฐํ์1 [์ ์ฝ์กฐ๊ฑด], ํ๋๋ช 2 ๋ฐ์ดํฐํ์2 [์ ์ฝ์กฐ๊ฑด], ... ); ์ ์ฝ์กฐ๊ฑด 1๏ธโฃ PRIMARY KEY : ๋ํ์ฑ์ ๊ฐ์ง๋ ๊ธฐ๋ณธํค๋ฅผ ์ ์ธํ๋ค. ๊ธฐ๋ณธํค๋ UNIQUE + NOT NULL ์ด๋ค. 2๏ธโฃ FOREIGN KEY : ์ธ๋ถ ํ ์ด๋ธ์ ํ๋์ ์ฐ๊ดํ๋ ์ฐธ์กฐํค๋ฅผ ์ ์ธํ๋ค. 3๏ธโฃ UNIQUE KEY : ๋ชจ๋ ๋ ์ฝ๋ ํ์์ ์ ์ผํ ์์ฑ์ผ๋ก ์ ์ธํ๋ค. ํค ๊ด๋ จ ๊ธ์ ๋ฐ์ ๋งํฌ์์ ํ์ธํ ์ ์๋ค. https://hyejin.tistory.com/118?category=975063 [Database] ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํค ์ข ๋ฅ (๊ธฐ๋ณธํค, ํ๋ณดํค, ์ธ๋ํค, ์ํผํค, ๋์ฒดํค) 1. ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ํค (key) ๋? ํค (..
2021.10.21 -
14-3. JS ๊ฐ์ฒด ์ฐ์ต๋ฌธ์ 1, 2
* ์ฐ์ต๋ฌธ์ 1 ํ์ฌ ์๊ฐ * ์ฐ์ต๋ฌธ์ 2 ํ์ฌ ์๊ฐ์ ์๋ ค์ฃผ๋ ํ์ ์ ๊ฐ์ด๋ฐ์ ๋์ฐ๊ธฐ ํ์ฌ ์๊ฐ ๋ณด๊ธฐ
2021.10.20 -
14-2. JS ๋ธ๋ผ์ฐ์ ์ ๊ด๋ จ๋ ๊ฐ์ฒด (window๊ฐ์ฒด, navigator ๊ฐ์ฒด, history ๊ฐ์ฒด, location ๊ฐ์ฒด, screen ๊ฐ์ฒด)
1. ๋ธ๋ผ์ฐ์ ๊ด๋ จ ๊ฐ์ฒด ์น ๋ธ๋ผ์ฐ์ ๊ฐ ์ด๋ฆฌ๋ฉด ๊ฐ์ฅ ๋จผ์ window๋ผ๋ ๊ฐ์ฒด๊ฐ ๋ง๋ค์ด์ง๊ณ , ๋ฐ์ผ๋ก ํ์ ์์์ ํด๋คํ๋ ๊ฐ์ฒด๋ค์ด ๋ํ๋๋ค. window์ ํ์ ๊ฐ์ฒด๋ก๋ document, history ๋ฑ์ด ์๊ณ , document์ ํ์ ๊ฐ์ฒด๋ก๋ area, image ๋ฑ์ด ์๋ค. window : ๋ธ๋ผ์ฐ์ ์ฐฝ์ด ์ด๋ฆด ๋ ๋ง๋ค ํ๋์ฉ ๋ง๋ค์ด์ง๋ ๊ฒ์ผ๋ก , ๋ธ๋ผ์ฐ์ ์ฐฝ ์์ ์์ ์ค์์ ์ต์์์ ์๋ค. document : ์น ๋ฌธ์๋ง๋ค ํ๋์ฉ ์์ผ๋ฉฐ, body ํ๊ทธ๋ฅผ ๋ง๋๋ฉด ๋ง๋ค์ด์ง๋ค. navigator : ํ์ฌ ์ฌ์ฉํ๋ ๋ธ๋ผ์ฐ์ ์ ์ ๋ณด๋ฅผ ๋ด๊ณ ์๋ค. history : ํ์ฌ ์ฐฝ์์ ์ฌ์ฉ์์ ๋ฐฉ๋ฌธ ๊ธฐ๋ก์ ์ ์ฅํ๋ค. location : ํ์ฌ ํ์ด์ง์ url ์ ๋ณด๊ฐ ๋ด๊ฒจ์๋ค. screen : ํ์ฌ ์ฌ์ฉํ๋ ํ๋ฉด ์ ๋ณด..
2021.10.20 -
14-1. JS ๊ฐ์ฒด (๊ฐ์ฒด, ์ธ์คํด์ค, ํ๋กํผํฐ, ๋ฉ์๋, Array๊ฐ์ฒด, Date ๊ฐ์ฒด, Math ๊ฐ์ฒด), ์ฐ์ต๋ฌธ์
1.์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ์ฒด 1๏ธโฃ DOM (๋ฌธ์ ๊ฐ์ฒด ๋ชจ๋ธ) : ์น ๋ฌธ์ ์์ฒด๊ฐ ๊ฐ์ฒด์ด๊ธฐ๋ ํ๊ณ , ์น ๋ฌธ์์ ํฌํจ๋ ์ด๋ฏธ์ง๋ ๋งํฌ , ํ ์คํธ ํ๋ ๋ชจ๋ ๊ฐ์ฒด์ ํด๋นํ๋ค, 2๏ธโฃ ๋ธ๋ผ์ฐ์ ๊ด๋ จ ๋ชจ๋ธ : ์น ๋ธ๋ผ์ฐ์ ์์ ์ฌ์ฉํ๋ ์ ๋ณด๋ ๊ฐ์ฒด๋ก ๋ํ๋ผ ์ ์๋ค. (history, location, link...) 3๏ธโฃ ๋ด์ฅ ๊ฐ์ฒด : ์น ํ๋ก๊ทธ๋๋ฐ ํ ๋ ์์ฃผ ์ฌ์ฉํ๋ ์์๋ก ์๋ฐ ์คํฌ๋ฆฝํธ ์์ ๋ฏธ๋ฆฌ ๊ฐ์ฒด๋ก ์ ์ ๋์ด ์๋ ๊ฒ์ ๋ด์ฅ๊ฐ์ฒด๋ผ๊ณ ํ๋ค. 2. ๊ฐ์ฒด์ ์ธ์คํด์ค ๋ง๋ค๊ธฐ ์๋ฐ์คํฌ๋ฆฝํธ์์ ๊ฐ์ฒด๋ ์ฐธ์กฐ ํ์์ผ๋ก ๋ง๋ค์ด์ ์ฌ์ฉํด์ผํ๋ค. ์ฆ ๊ฐ์ฒด ์์ฒด๊ฐ ์๋ ์ธ์คํด์ค์ ํํ๋ก ๋ง๋ค์ด์ ์ฌ์ฉํด์ผํ๋ค. ์๋ฐ์คํฌ๋ฆฝํธ์ ๊ฐ์ฒด๊ฐ ํ์ด๋ผ๋ฉด ๊ทธ ํ์ ๊ธฐ๋ณธ์ผ๋ก ํด์ ๊ณ์ ๊ฐ์ ๋ชจ์์ผ๋ก ์ฐ์ด ๋ด๋ ๊ฒ์ด ์ธ์คํด์ค์ด๋ค. ๊ฐ์ฒด์ ์ธ์คํด์ค..
2021.10.20 -
[oracle] ํ ์ ๋ณด ๊ด๋ จ ํจ์ (LEAD(), LAG(), XMLAGG,XMLELEMENT)
1. LEAD() LEAD() ํจ์๋ ๋ค์ ๋ ์ฝ๋์ ํ๋ ๊ฐ์ ๊ตฌํ๋ ํจ์์ด๋ค. LEAD(ํ๋๋ช ) OVER (PARTITION BY ๊ทธ๋ฃนํ๋๋ช ORDER BY ์ ๋ ฌํ๋๋ช ) 2. LAG() LAG() ๋ ์ด์ ๋ ์ฝ๋์ ํ๋ ๊ฐ์ ๊ตฌํ๋ ํจ์์ด๋ค. LAG(ํ๋๋ช ) OVER (PARTITION BY ๊ทธ๋ฃนํ๋๋ช ORDER BY ์ ๋ ฌํ๋๋ช ) 3. XMLAGG, XMLELEMENT XMLAGG, XMLELEMENT ํจ์๋ ๊ทธ๋ฃน์ ์ํ ์ฌ๋ฌ ํ์ ๋ ์ฝ๋ ํ๋ ๊ฐ์ ํ ํ์ ๋ณด์ฌ์ฃผ๋ ํจ์์ด๋ค. XMLAGG(XMLELEMENT(X, ๊ตฌ๋ถ์. ๋ฌถ์ํ๋๋ช ) ORDER BY ์ ๋ ฌํ๋๋ช ).EXTRCT('//text()')
2021.10.20 -
[oracle] ๊ทธ๋ฃน ํจ์(MAX(), MIN(), SUM(), AVG(), COUNT(), ROLLUP(),ROW_NUMBER(), RANK(), DENSE_RANK(), RANK() WITHIN, FIRST_VALUE())
1. MAX() MAX() ํจ์๋ ๊ทธ๋ฃน์ผ๋ก ๋ง๋ ํ๋๋ช ์ ์ต๋๊ฐ์ ๊ตฌํ๋ ํจ์์ด๋ค. 2. MIN() MIN() ํจ์๋ ๊ทธ๋ฃน์ผ๋ก ๋ง๋ ํ๋๋ช ์ ์ต์๊ฐ์ ๊ตฌํ๋ ํจ์์ด๋ค. 3. SUM() SUM() ํจ์๋ ๊ทธ๋ฃน์ผ๋ก ๋ง๋ ํ๋๋ช ์ ํฉ๊ณ๋ฅผ ๊ตฌํ๋ ํจ์์ด๋ค. 4. AVG() AVG() ํจ์๋ ๊ทธ๋ฃน์ผ๋ก ๋ง๋ ํ๋๋ช ์ ํ๊ท ์ ๊ตฌํ๋ ํจ์์ด๋ค. 5. COUNT() COUNT() ํจ์๋ ๊ทธ๋ฃน์ผ๋ก ๋ง๋ 'ํ๋๋ช '์ ๋ ์ฝ๋ ๊ฐ์๋ฅผ ๊ตฌํ๋ ํจ์์ด๋ค. 6. ROLLUP() ROLLUP() ํจ์๋ ๊ทธ๋ฃน์ผ๋ก ๋ง๋ ํ๋๋ช 1, ํ๋๋ช 2...์ ๊ทธ๋ฃน์ ๋ง๋ค์ด ์๊ณ์ ์ดํฉ์ ๊ตฌํ๋ ํจ์์ด๋ค. 7. ROW_NUMBER() ROW_NUMBER() ํจ์๋ ๊ทธ๋ฃนํ๋๋ช ์ผ๋ก ๊ทธ๋ฃน์ ๋ง๋ค๊ณ ์ ๋ ฌํ๋๋ช ์ผ๋ก ์ ๋ ฌํด ์ค๋ณต์๋ ์๋ฒ์ ๋ง๋๋ ํจ์์ด๋ค. 8...
2021.10.20 -
[oracle] ํ ๋ณํ ํจ์ (TO_CHAR(), TO_DATE(), TO_NUMBER(), CHR(), ASCII())
1. TO_CHAR() TO_CHAR() ํจ์๋ '๋ ์ง'๋ฅผ '๋ ์งํ์'์ ๋ฌธ์๋ก ๋ฐ๊พธ๊ฑฐ๋ '์์น'๋ฅผ '์์นํ์'์ ๋ฌธ์๋ก ๋ฐ๊พธ๋ ํจ์์ด๋ค. 2. TO_DATE() 3. TO_NUMBER() TO_NUMBER() ํจ์๋ ์์นํ ๋ฌธ์์ด์ ์์น๋ก ๋ฐ๊พธ๋ ํจ์์ด๋ค. 4. CHR() CHR() ํจ์๋ ์ฝ๋๊ฐ์ ์์คํค ๋ฌธ์๋ก ๋ฐ๊พธ๋ ํจ์์ด๋ค. 5. ASCII() ASCII() ํจ์๋ ๋ฌธ์๋ฅผ ์ฝ๋๊ฐ์ผ๋ก ๋ฐ๊พธ๋ ํจ์์ด๋ค.
2021.10.20 -
[oracle] ๋น๊ต ํจ์ (DECODE(), LEAST(), GREATEST(), NVL(), WIDTH_BUCKET() )
1. DECODE() DECODE() ํจ์๋ ๊ธฐ์ค๊ฐ๊ณผ ๋น๊ต๊ฐ์ด ๊ฐ์ผ๋ฉด ํด๋น๊ฐ์ ๊ตฌํ๊ณ ์๋๋ฉด ๋ฏธํด๋น๊ฐ์ ๊ตฌํ๋ ํจ์์ด๋ค. DECODE(๊ธฐ์ค๊ฐ , ๋น๊ต๊ฐ, ํด๋น๊ฐ[,๋ฏธํด๋น๊ฐ]) 2. NVL() NVL() ํจ์๋ ๊ธฐ์ค๊ฐ์ด NULL ์ด๋ฉด ํน์ ๊ฐ์ ๊ตฌํ๋ ํจ์์ด๋ค. 3. LEAST() LEAST() ํจ์๋ ์ต์๊ฐ์ ๊ตฌํ๋ ํจ์์ด๋ค. 4. GREATEST() GREATEST() ํจ์๋ ์ต๋๊ฐ์ ๊ตฌํ๋ ํจ์์ด๋ค. 5. WIDTH_BUCKET() WIDTH_BUCKET() ํจ์๋ ์์๊ฐ์์ ์ข ๋ฃ๊ฐ๊น์ง ๋ถํ ๊ฐ๋งํผ ๊ตฌ๊ฐ์ ๋ง๋ค๊ณ ๊ธฐ์ค๊ฐ์ด ์ด๋ ๊ตฌ๊ฐ์ ์๋์ง ๊ตฌํ๋ค. -> 1๋ถํฐ 50๊น์ง 10๊ฐ์ ๊ตฌ๊ฐ์ ๋ง๋ ๋ค. 1~5, 6~10, 11 ~ 15, 16 ~ 20, 21 ~ 25, 26 ~ 30, 31 ~ 35, 36 ~ ..
2021.10.20