본문 바로가기

Oracle DB23

21. 색인(Index) ○ Index (색인) - 데이터를 빠르게 찾을 수 있는 수단 - 테이블에 대한 조회 속도를 높여 주는 자료구조 - PK칼럼은 자동으로 인덱스 생성된다 ○ Index 방식 ① full scan - 처음부터 끝까지 일일이 검사하는 방법, 전수조사 - - 장점: 쓰레기데이터를 걸러낼 수 있다 - 단점: 시간이 많이 소모된다 ② index range scan - 이름이 여러개인 경우 목차를 찾아서 페이지를 찾아감 - 가장 일반적, 책 뒤의 인덱스 같은 느낌 - 훨씬 빠름, 별도의 메모리가 있어야 함 ③ index unique scan - 학번은 1개만 존재함, 유일한 값 ○ Index 생성/삭제 ① 생성 - 형식) create index 인덱스명 on 테이블명(칼럼명) ② 삭제 -형식) drop index 인.. 2022. 5. 24.
20. PL/SQL, 프로시저(Procedure) ○ PL/SQL(Procedural language) 프로시저 - 절차적인 데이터베이스 프로그래밍 언어 - 변수, 조건문, 반복문 - 콘솔창 출력하기 위한 사전 준비작업 set serveroutput on; ○ PL/SQL 기본문법 ① 기본 문법 - 형식) declare 변수 선언 및 대입 begin 실행할 명령어 end; - 콘솔창 출력 : dbms_output.put_line(출력할 내용); declare -- 변수 선언 및 대입 a number :=3; b number :=5; begin -- 콘솔창 출력 DBMS_OUTPUT.PUT_LINE('* 실행 결과 *'); DBMS_OUTPUT.PUT_LINE(a); DBMS_OUTPUT.PUT_LINE(b); DBMS_OUTPUT.PUT_LINE(a+b.. 2022. 5. 24.
19. 가상의 테이블, 뷰(View) ○ 뷰(View) ① 정의 - 테이블에 대한 가상의 테이블로서 테이블처럼 직접 데이터를 소유하지 않고 검색시에 이용할 수 있도록 정보를 담고 있는 객체 테이블 정보의 부분집합 ② 사용목적 - 테이블에 대한 보안기능을 설정해야 하는 경우 - 복잡하고, 자주 사용하는 질의 SQL문을 보다 쉽고 간단하게 사용해야 하는 경우 ③ 사용자 계정에 뷰 생성 권한 부여 - 형식) grant create view to 아이디; --java200202 계정에 대해서 뷰 생성 권한 부여 GRANT CREATE VIEW TO java200202; ○ 뷰 사용하기 ① 테이블, 뷰 목록 확인 select * from tab; -- 모든 객체 종류 확인 select * from tab where tabtype='TABLE'; --.. 2022. 5. 23.
18. Oracle DB, 계정 생성 (사용자 계정, 최고관리자 계정, DCL) ○ 최고관리자 계정 - Oracle : System 또는 Sys - Maria DB : root - MS-SQL : SA (System Administer) ○ DCL(Data Control Language) 명령어 - 사용자가 별로 쓸 일 없음, 호스팅 업체가 주로 사용 - grant : 사용자 접근 권한 부여 - revoke : 사용자 접근 권한 취소 - deny : 특정 사용자만 접근 차단 ○ 사용자 계정 - 사용자 계정 생성전 세션 변경 필요 -- 계정 생성시 세션 변경해야 함 alter session set "_ORACLE_SCRIPT"=true; -- 사용자 계정 목록 select username from all_users; - java202202 라는 사용자 계정 만들기 ① 테이블 스페이스(.. 2022. 5. 23.
17. CSV파일 Import (오라클DB로CSV파일 활용하기) ○ CSV파일 - Comma-Separated Values - 모든 데이터가 , 로 구분되어 있는 파일 - 스프레드 시트나 DB에서 활용가능 ○ CSV파일 데이터베이스로 가져오기 - 공공데이터포털 https://www.data.go.kr/ 활용해서 여러 CSV 파일 다운 가능 - 도로명 우편번호 테이블 구축 ① zipdoro.csv 준비 (258267행) ② Developer에서 테이블 우클릭 > 데이터 임포트 ③ 파일찾아보기에서 csv파일이 다운된 경로 찾아서 가져오면 밑에 파일내용 미리보기 보임 ④ 테이블 이름 정해주기 (정해준 뒤 다음 클릭) ⑤ 필요한 열만 선택해주기 (기본은 다 선택된 상태/ 선택후 다음 클릭) ⑥ 마지막으로 칼럼명 및 데이터타입, 제약조건 등 설정 ⑦ 마지막 검토 후 완료 누르.. 2022. 5. 22.
16. 학사관리 DB 관련 종합연습문제 ● PRACTICE 연습문제 - 학사관리 관련 종합연습문제 (테이블 조인) Q1) 디자인 교과목 중에서 학점이 제일 많은 교과목을 수강신청한 명단을 조회하시오 (학번, 이름, 과목코드) -- 방법1 -- 0. select * from tb_sugang order by gcode; -- 1. 디자인 교과목 학점별 내림차순 정렬 select gcode, gname, ghakjum from tb_gwamok where gcode like 'd%' order by ghakjum desc; -- 2. 1의 결과에 줄번호 추가 select gcode, gname, ghakjum, rownum as rnum from ( select gcode, gname, ghakjum from tb_gwamok where gcod.. 2022. 5. 21.