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 |
Tags
- K๋ฐฐํฐ๋ฆฌ๋ ๋ณผ๋ฃจ์
- ๊ฐ๋ฐ
- ๋ ์
- ํฐ์คํ ๋ฆฌ์ฑ๋ฆฐ์ง
- ํ์ฒ์ ๋ฆฌํธ๋ฆฌํธ
- database
- ์ค๋ผํด
- ์๋ฐ์คํฌ๋ฆฝํธ
- JavaScript
- ์๋ฐ
- ์นํผ๋ธ๋ฆฌ์ฑ
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ์ํ์ฃผ
- ๊น๋ฏธ๊ฒฝ์๋งํ์์
- ํ์ด์ฌ
- ๊ฐ์ดํ ์ข ๋ญ๊ฐ๋น
- html
- Java
- ์ฑ
- ์นดํ๋๊ฐ
- ๋๊ฐ
- ์ํ
- ์ฝ๋ฉ
- ์ค๋ธ์
- ๋ฐฐ์์ ๋ฐฐ์
- ์ ๋ฆฌํธ๋ฆฌํธ
- ๋ฐ์ํ
- Python
- css
- ํ๋ก๊ทธ๋๋ฐ
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 ์ฌ์ฉํ์ฌ ์กฐ๊ฑด์ ์ง์ ํ ์๋ ์์
๋ฐ์ํ
'Study > 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 |