Lang/SQL(17)
-
12. sys계정 사용자 관리
1. 사용자 계정 sys,system : 오라클 데이터베이스 관리자 DBA권한 자동 할당 sys 데이터 딕셔너리 소유자 system 모든 권한이 sys와 같으나 데이터베이스 생성 권한 없음 user 사용자, 오라클 서버에 접속하기 위해 사용하는 것이 user schema 특정 사용자가 만들어놓은 모든 오브젝트 집합 2. 오라클의 논리적 저장구조 오라클 데이터관리 데이터를 저장, 추출, 삭제 변경하는 작업 데이터는 파일에 저장 오라클 데이터베이스 데이터파일들을 가지고 있다 오라클 내부에서는 논리적인 개념으로 데이터 관리 데이터블록 : 오라클에서 데이터를 저장하는 가장 최소의 논리적 단위 사이즈는 2k,4k,8k,16k,32k,64k, 기본 8k 익스텐트 : 8개의 데이터 블록이 모여 익스텐트가 된다 세그먼..
2023.03.27 -
10. 시퀀스, 인덱스, 뷰
1. SEQUENCE 연속적인 숫자를 생성해내는 객체 기본키가 각각의 입력되는 row를 식별할 수 있기만 하면 된다고 할 때 시퀀스에 의해 생성된 값 아용 테이블의 기본키 값을 생성하기 위해 사용되는 독립적인 객체 테이블에 종속되지 않는다 하나의 시퀀스를 여러개의 테이블에 동시에 사용 가능 create sequence "스키마명.시퀀스명" minvalue -- 시작숫자 maxvalue -- 끝 숫자 increment by -- 증가 단위 start with -- 시퀀스 생성이 시작되는 값 nocache noorder -- order 요청되는 순서대로 값을 생성 nocycle; -- cycle 최대치에 다다랐을 때 초기값부터 다시 시작할 지 --시퀀스 생성 create sequence pd_temp1_se..
2023.03.27 -
11. PL/SQL
1. PL/SQL이란 Procedual Language extension to Structured Query Language SQL과 일반 프로그래밍 언어의 특성을 결합 변수 상수 선언 가능 조건문 반복문 사용 가능 DBMS의 역할이 커지면서 SQL을 넘어서는 일반 프로그래밍 언어의 기능이 필요하게 되었다 1989년 오라클 6버전부터 등장 a. 기본구조 선언부 (Declarative part) 실행부에서 사용할 변수나 상수 선언 변수와 상수 선언은 반드시 선언부에서만 선언 Declare 사용 실행부 (Executable part) 셀지 처리할 로직 부분 담당 변수에 값 할당, if, while, sql 등 실행부에 여러개의 sql문장들을 순차적으로 사용 블록 단위로 한번에 처리 Begin으로 시작, En..
2023.03.27 -
9. 데이터 정의어 / DDL / 테이블 제약조건
1. ddl 오라클 데이터를 저장하고 관리해주는 프로그램 관리를 위해 다양한 저장객체 (오브젝트)를 생성 ddl 오브젝트를 생성,변경,관리하는 명령어 create 새로운 오브젝트나 스키마를 생성 데이터 베이스 객체들을 생성create 객체종류 객체명.. drop 객체들을 삭제할 때 사용 delete : 테이블 상의 데이터를 삭제 drop : 객체 자체를 데이터베이스에서 영구히 삭제drop 객체종류 객체명.. alter 기존 생성된 객체를 변경할 때 사용 테이블 사용중 컬럼을 추가하는 등alter 객체종류 객체명.. truncate delete문과 동일한 역할 rollback으로 복구 불가 (자동 commit) delete보다 수행속도가 빠르다 delete 메모리 상에 존재하는 테이블의 데이터만 삭제 디스..
2023.03.27 -
8. 트랜잭션 제어어 / TCL
1. 기본 sql developer에서 insert문을 통해 테이블에 값 입력 메모리 상에만 입력 cmd창에서 해당 테이블 로드 시,insert문을 통해 입력한 데이터 들어가있지 않다 입력한 데이터가 전달되지 않을 경우 전부 취소(rollback) 은행의 송금과 같은 개념 a계좌 출금 후 b계좌에 입금 확인 시 거래 성사 (commit) a계좌 출금 후 b계좌에 입금되지 않았을시 취소 (rollback) 네트워크 장애 등의 이유 모두 처리 (commit) 혹은 모두 취소 (rollback) 반드시 트랜잭션 처리해야한다 savepoint를 설정하여, 트랜잭션 관리 가능 2. transaction 논리적인 작업 단위 여러가지 dml작업들을 하나의 단위로 묶어둔 것 모든 dml이 성공해야 해당 트랜잭션 성공 ..
2023.03.27 -
7. 데이터조작어 / DML
1. Insert 테이블에 새로운 데이터를 입력할 때 사용하는 명령어 데이터를 입력할 때 숫자 값 이외에는 데이터를 따옴표로 감싸야한다 a. 단일 행 입력하기 insert into table [(column1, 2,..)] values (value1, 2 ..) -- 원하는 컬럼에 데이터 넣기 insert into dept2(dcode, pdept, dname) values('9000','1006','특반1팀'); --지정한 컬럼 순으로 입력 DCODE DNAME PDEPT AREA ------ -------------------- ------ -------- 9000 특반1팀 1006 (null) --모든 컬럼에 데이터 넣기 insert into dept2 v..
2023.03.27