TIL 23.09.15

ν™©μ€ν•˜Β·2023λ…„ 9μ›” 19일
0

TIL

λͺ©λ‘ 보기
82/146

πŸ“ŒToday I Learned

DB ν”„λ‘œμ νŠΈ

ꡐ사 κΈ°λŠ₯μ—λŠ” κ°•μ˜ κ³„νšμ„œ 쑰회, 배점 μž…μΆœλ ₯, 성적 μž…μΆœλ ₯, 좜결 관리가 μžˆλ‹€.
ν•΄λ‹Ή κΈ°λŠ₯에 ν•„μš”ν•œ ansi-sql을 μ™„μ„±ν•˜μ˜€κ³ , 이λ₯Ό 기반으둜 ν•΄λ‹Ή κΈ°λŠ₯을 κ΅¬ν˜„ν•˜λŠ” pl/sql도 μž‘μ„±ν•˜μ˜€λ‹€.

μ•„λž˜λŠ” μž‘μ„±λœ μ½”λ“œ 쀑 일뢀이닀.

-- κ³Όμ •λ²ˆν˜Έ μž…λ ₯
-- κ΅μœ‘μƒ 정보 좜λ ₯
-- (번호) (κ΅μœ‘μƒλ²ˆν˜Έ) κ΅μœ‘μƒμ΄λ¦„ μ „ν™”λ²ˆν˜Έ 등둝일 수료|쀑도여뢀
-- ex) κ³Όμ •λ²ˆν˜Έ = 2

select * from tblcourse; -- κ³Όμ •
select * from tblcourselist; -- μˆ˜κ°• κ³Όμ • λͺ©λ‘
select * from tblstudent; -- κ΅μœ‘μƒ

--select studentseq from tblCourseList where courseseq = 2; -- 2번 과정을 λ“£λŠ” 학생 번호

select 
    studentseq as κ΅μœ‘μƒλ²ˆν˜Έ, name as κ΅μœ‘μƒμ΄λ¦„, phone as μ „ν™”λ²ˆν˜Έ, registerdate as 등둝일, compldropstatus as μˆ˜λ£Œμ€‘λ„νƒˆλ½μ—¬λΆ€
from tblstudent 
where processseq = 2;


create or replace procedure procStudentList(
    pCourse number
)
is
    cursor vcursor
    is 
    select 
        studentseq as κ΅μœ‘μƒλ²ˆν˜Έ, name as κ΅μœ‘μƒμ΄λ¦„, phone as μ „ν™”λ²ˆν˜Έ, registerdate as 등둝일, compldropstatus as μˆ˜λ£Œμ€‘λ„νƒˆλ½μ—¬λΆ€
    from tblstudent 
    where processseq = 2;
    vrow (select 
        studentseq as κ΅μœ‘μƒλ²ˆν˜Έ, name as κ΅μœ‘μƒμ΄λ¦„, phone as μ „ν™”λ²ˆν˜Έ, registerdate as 등둝일, compldropstatus as μˆ˜λ£Œμ€‘λ„νƒˆλ½μ—¬λΆ€
    from tblstudent 
    where processseq = 2)%rowtype;
begin
     dbms_output.put_line('κ΅μœ‘μƒλ²ˆν˜Έ' || ' ' || 'κ΅μœ‘μƒμ΄λ¦„' || '     ' || 'μ „ν™”λ²ˆν˜Έ' || ' ' || '등둝일' || '     ' || 'μˆ˜λ£Œμ€‘λ„νƒˆλ½μ—¬λΆ€');
     open vcursor;
        loop
            fetch vcursor into vrow;
            exit when vcursor%notfound;

            dbms_output.put_line('    ' || vrow.studentseq || ' ' || vrow.name || ' ' || vrow.tel);

        end loop;
     close vcursor;
end;



begin
    procStudentList(2);
end;
profile
μ°¨κ·Όμ°¨κ·Ό ν•˜λ‚˜μ”©

0개의 λŒ“κΈ€