CodingDiary/Oracle 7

Oracle_7

(1) 문자열 관련 함수 - LOWER ('문자열') : 영문자를 소문자로 변환 - UPPER ('문자열') : 영문자를 대문자로 변환 - INITCAP ('문자열') : 첫 영문자를 대문자로 변환 - CONCAT ('문자열','문자열') : 문자열 연결 또는 || - LENGTH () : 문자열 길이 - lengthb () : 문자열 길이를 바이트로(한글이 3바이트 차지) - LPAD ('문자열',전체 자리수,'채울 문자열') : 좌측을 지정한 값으로 채운다 - RPAD ('문자열',전체 자리수,'채울 문자열') : 우측을 지정한 값으로 채운다 - INSTR ('문자열','찾을 문자열') : 찾은 문자열의 인덱스 반환 >> 인덱스는 1부터 시작 예1] SELECT * FROM DEPT WHERE ins..

CodingDiary/Oracle 2024.04.23

Oracle_6

* 출력 코드 DBMS_OUTPUT.PUT : 그대로 출력 (줄바꿈X) DBMS_OUTPUT.PUT_LINE : 그대로 출력하고 줄바꿈O DBMS_OUTPUT.NEW_LINE : 줄바꿈만 *CMD 내 출력을 위한 서버 ON 코드 : SET SERVEROUT ON *CMD 내 파일 생성 코드 : ED 파일명 *CMD 내 파일 실행 코드 : @파일명 *CMD 내 입력받는 변수를 나타내는 코드 : &변수명 [1] IF 문 - 형식] IF condition THEN statement; // DBMS_OUTPUT.PUT_LINE(); -- 출력 같은 코드 입력 [ ELSIF confition THEN statement; ] [ ELSE statement; ] END IF; - 오라클의 ELSIF은 자바의 else..

CodingDiary/Oracle 2024.04.22

Oracle_5

- PL : PROCEDURAL(프로시저, 절차적인) LANGUAGE - 프로그래밍 언어의 특성을 수용한 SQL의 확장 - 구조] DECLARE 변수 및 상수, CURSOR,EXCEPTION선언등 //선언부-선택사항 BEGIN SQL,PL/SQL문; //실행부-필수사항 EXCEPTION BEGIN 예외처리 ;//예외처리부-선택사항 END; END; / ----->PL/SQL 마지막에 필수. - PL/SQL 블락 내 명령문 종료 시마다 세미콜론(;) - END 뒤에 세미콜론(;)과 / 반드시 붙이기 [1] 변수 선언 - 오라클에서의 :=은 자바의 =(대입연산자)와 같음 (단, 오라클에서의 =는 비교연산) - 한 라인에 하나의 식별자만 가능 / 대소문자 구분X - 상수 선언의 경우, [ CONSTANT 자료..

CodingDiary/Oracle 2024.04.19

Oracle_4

- 기존에 있는 테이블의 데이터를 가상으로 테이블을 만든 것 ( 물리적으로는 존재x) - 목적 : 조회, 검색 - 장점 : 중요한 컬럼 숨기기 가능, 복잡한 컬럼 숨기기 가능해서 소스 간결 - DML문(INSERT,DELETE,UPDATE)에서 사용 가능하나, 여러테이블로 만든(JOIN) INSERT문에서는 사용 불가능 - 형식] CREATE [OR REPLACE] VIEW VIEW명[(컬럼별칭1,컬럼별칭2...)] AS SELECT 구문 [WITH READ ONLY] - [OR REPLACE] : VIEW 수정 시 사용하는 코드 (=ALTER VIEW와 같은 효과) - [WITH READ ONLY] : 읽기전용으로 생성 - VIEW 에서 별칭 부여 시 : ""로 감싸줘야 함. - VIEW 삭제 : DR..

CodingDiary/Oracle 2024.04.18

Oracle_3

★ 오라클은 FROM 절없으면 에러. > 반드시 FROM절 기입 ※ 테이블 명 조회 : SELECT 테이블명 FROM USER_TABLES; ※ 객체(테이블) 스키마 조회 : DESC 테이블명; [1] 코드 형식 CREATE TABLE 테이블명( , 컬럼명1 자료형 PRIMARY KEY , 컬럼명2 자료형 ~ [2] 테이블 명명 규칙 - 문자로 시작 / 30자 이내 / 대소문자 구별X [3] 제약조건 (CONSTRAINT 제약조건명 제약조건) (1) 기본 키(Primary Key) : PK >> NOT NULL, NOT DUPLICATE - 1개의 테이블에 1개의 PK만 존재 > PK로 지정된 컬럼값은 중복X NULLX - 외래키로 참조 무결성 유지 목적 * NOT NULL + UNIQUE(유니크) = ..

CodingDiary/Oracle 2024.04.17

Oracle_2

**자식 테이블에 중복된 것들이 있는 부모 테이블을 가져올 때 사용. - 모든 테이블에는 PK가 있어야 함. - 부모의 PK=자식의 FK : 부모의 PK 값이 자식의 FK로 전이 된 것을 의미 (먼저 생긴 데이터가 부모) [1] INNER JOIN - 테이블 n개의 조인 조건이 정확히 일치 해야 성립 - 조인 조건 : 부모의 PK=자식의 FK >> 각 테이블간의 관계(부모-자식) 선 파악 해야 함. - 형식] SELECT 컬럼명 FROM 테이블명1 [INNER] JOIN 테이블명2 ON 테이블명1.PK컬럼명 = 테이블명2.FK컬럼명 [INNER] JOIN 테이블명3 ON 테이블명3.PK컬럼명 = 테이블명2.FK컬러명 [INNER] JOIN 테이블명4 ON 테이블명4.PK컬럼명 = 테이블명1.FK컬러명 -..

CodingDiary/Oracle 2024.04.16

Oracle_1

- Oracle 12c 이후 버전부터 도입 - 여러 개의 Pluggable Database(PDB)를 하나의 Container Database(CDB) 안에 호스팅할 수 있는 구조를 제공 >>주로 클라우드 환경에서 활용. - 하나의 어플에 여러 고객의 데이터 베이스를 담아 사용할 수 있는 것 (어플(CDB)은 공유가 가능하며, 데이터베이스(PDB)는 독립적이어서 접근 불가) ( PDBs in a CDB ) *PDBs (Pluggable Database) - 각 PDB는 독립적인 데이터베이스 > PDB 끼리 공유 불가 *CDB (Container Database) (=ROOT 데이터 베이스) - 멀티 테넌트 아키텍처의 최상위 레벨에 위치하는 컨테이너 데이터베이스 - CDB 내에는 여러 개의 PDB를 생성하..

CodingDiary/Oracle 2024.04.15