Notice
Recent Posts
Recent Comments
Link
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- ComputerScience
- K๋ฐฐํฐ๋ฆฌ
- ์๋ฐ์คํฌ๋ฆฝํธ
- ๊น๋ฏธ๊ฒฝ
- css
- ๊ฐ๋ฐ
- Python
- ์๋ฐ
- html
- ์ฅํธ์์ค
- JavaScript
- ํ์ด์ฌ
- K๋ฐฐํฐ๋ฆฌ๋ ๋ณผ๋ฃจ์
- ๋ ์
- ํ๋ก๊ทธ๋๋ฐ
- ์ฑ
- ์ํ
- Java
- ๋ง์ผ๋ด๊ฐ์ธ์์๋ค์์ฐ๋ค๋ฉด
- ์ค๋ผํด
- ์นํผ๋ธ๋ฆฌ์ฑ
- ์นํ์ด์ง๋ง๋ค๊ธฐ
- ๊น๋ฏธ๊ฒฝ์๋งํ์์
- ๋ผํ๋ผ์ค์๋ง๋
- ์ฝ๋ฉ
- database
- ๋ฐ์ํ
- ์ปดํจํฐ๊ณผํ
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ๊นํ๋จ
Archives
- Today
- Total
JiYoung Dev ๐ฅ
[database ๊ณ ๊ธ] ํ๋ก์์ (2023.08.09 ~ 10) ๋ณธ๋ฌธ
ํ๋ก์์
SQL์ ์ ์ฐจ์ ์ผ๋ก ํ๋ก๊ทธ๋๋ฐํ์ฌ ์ฌ์ฉํ๋ ๊ธฐ์
SQL์ ๋ํ์ ์ธ ๋น์ ์ฐจํ ์ธ์ด
SET SERVEROUTPUT ON;
SELECT * FROM TB_CUST;
CREATE OR REPLACE PROCEDURE P_SOLD_OUT_YN_DEL
AS
v_cnt NUMBER := 0;
BEGIN
DBMS_OUTPUT.PUT_LINE(v_cnt);
SELECT COUNT(*) INTO v_cnt FROM TB_CUST ;
DBMS_OUTPUT.PUT_LINE(v_cnt);
EXCEPTION
WHEN OTHERS THEN
NULL ;
END ;
/
EXEC P_SOLD_OUT_YN_DEL;
๋ณ์ ์ ์ธ
CREATE OR REPLACE PROCEDURE P_SOLD_OUT_YN_DEL
AS
v_cust_id TB_CUST.CUST_ID%TYPE ;
v_cust TB_CUST%ROWTYPE;
BEGIN
SELECT CUST_ID INTO v_cust_id FROM TB_CUST WHERE CUST_NAME = '๊ณ ๊ฐ001';
DBMS_OUTPUT.PUT_LINE('ํด๋น ๊ณ ๊ฐ์ ์์ด๋๋ ' || v_cust_id || '์
๋๋ค.');
SELECT * INTO v_cust FROM TB_CUST WHERE CUST_ID = 'C0001';
DBMS_OUTPUT.PUT_LINE('ํด๋น ๊ณ ๊ฐ์ ์์ด๋๋ ' || v_cust.CUST_ID || '์
๋๋ค.');
DBMS_OUTPUT.PUT_LINE('ํด๋น ๊ณ ๊ฐ์ ์์ผ์ ' || v_cust.BIRTH_DY || '์
๋๋ค.');
END ;
IF๋ฌธ
CREATE OR REPLACE PROCEDURE P_SOLD_OUT_YN_DEL
AS
v_sold_yn VARCHAR2(5);
BEGIN
SELECT SOLD_OUT_YN INTO v_sold_yn FROM TB_PRD WHERE PRD_ID = 'P0001';
IF v_sold_yn = 'Y'
THEN DBMS_OUTPUT.PUT_LINE('P0001 ์ํ์ ํ์ ์
๋๋ค.');
ELSIF v_sold_yn = 'N'
THEN DBMS_OUTPUT.PUT_LINE('P0001 ์ํ์ ํ๋งค์ค์
๋๋ค.');
END IF;
v_sold_yn := null;
SELECT SOLD_OUT_YN INTO v_sold_yn FROM TB_PRD WHERE PRD_ID = 'P0015';
IF v_sold_yn = 'Y'
THEN DBMS_OUTPUT.PUT_LINE('P0015 ์ํ์ ํ์ ์
๋๋ค.');
ELSE DBMS_OUTPUT.PUT_LINE('P0015 ์ํ์ ํ๋งค์ค์
๋๋ค.');
END IF;
END ;
/
๋ฐ๋ณต๋ฌธ
CREATE OR REPLACE PROCEDURE P_SOLD_OUT_YN_DEL
AS
v_prd_id TB_PRD.PRD_ID%TYPE;
v_soldout_yn TB_PRD.SOLD_OUT_YN%TYPE;
CURSOR c_prd_cursor IS SELECT PRD_ID, SOLD_OUT_YN FROM TB_PRD;
BEGIN
OPEN c_prd_cursor ;
LOOP
FETCH c_prd_cursor INTO v_prd_id, v_soldout_yn ;
IF v_soldout_yn = 'Y' THEN
DBMS_OUTPUT.PUT_LINE(v_prd_id || '๋ ํ์ ์
๋๋ค.');
ELSE
DBMS_OUTPUT.PUT_LINE(v_prd_id || '๋ ํ๋งค์ค์
๋๋ค.');
END IF;
EXIT WHEN c_prd_cursor%NOTFOUND;
END LOOP;
CLOSE c_prd_cursor;
END ;
/
์์ธ์ฒ๋ฆฌ
ํ๋ก์์ ์์๋ DDL๋ฌธ์ ๋ฐ๋ก ์ธ ์ ์์ (commit์ ๊ฐ๋ ์ด ๋ชจํธํด์ง )
→ execute immediate ์ฌ์ฉ
๋ฐฑ์ ํ๋ก์์
WHERE ์ฌ์ฉํ์ฌ ์กฐ๊ฑด์ ์ง์ ํ ์๋ ์์
'full stack > database' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[database ๊ณ ๊ธ] db ์ค๊ณ (2023.08.10) (0) | 2023.08.10 |
---|---|
[database ๊ณ ๊ธ] ๊ณ์ธต ์ฟผ๋ฆฌ (2023.08.09) (0) | 2023.08.09 |
[database ๊ณ ๊ธ] ์ธ๋ฑ์ค (2023.08.09) (0) | 2023.08.09 |
[database ๊ณ ๊ธ] ์๋์ฐ ํจ์ (2023.08.09) (0) | 2023.08.09 |
[database ๊ณ ๊ธ] ์งํฉ์ฐ์ฐ์ (2023.08.08) (0) | 2023.08.08 |