전체 글

기록의 힘을 믿습니다 📂
· ON/Oracle
서브쿼리를 이용해서 DEPARTMENT 테이블 복사 CREATE TABLE DEPT_COPY AS SELECT * FROM DEPARTMENT; DEPT_COPY 테이블에 PK 추가 ALTER TABLE DEPT_COPY ADD PRIMARY KEY(DEPT_ID); ALTER(바꾸다, 변조하다) 수정 가능한 것 : 제약조건(추가/삭제), 컬럼(추가/수정/삭제) 이름변경(테이블, 컬럼, 제약조건) [작성법] 테이블을 수정하는 경우 ALTER TABLE 테이블명 ADD|MODIFY|DROP 수정할 내용; 1. 제약조건 (추가 / 삭제) * 작성법 중 [] 대괄호 : 생략할 수 도, 안할 수 도 있다. ● 제약조건 추가 : ALTER TABLE 테이블명 ADD [CONSTRAINT 제약조건명] 제약조건(컬럼..
· ON/Oracle
제약조건(CONSTRAINTS) 사용자가 원하는 조건의 데이터만 유지하기 위해서 특정 컬럼에 설정하는 제약. 데이터 무결성(중복 / NULL 최소화) 보장을 목적으로 함 ✔ 제약 조건 종류 : PRIMARY KEY, NOT NULL, UNIQUE, CHECK, FOREIGN KEY. 제약 조건 확인 1. USER_CONSTRAINTS: 사용자가 작성한 제약조건을 확인하는 딕셔너리 뷰 2. USER_CONS_COLUMNS : 제약조건이 걸려 있는 컬럼을 확인하는 딕서너리 뷰 1.NOT NULL ( NULL X) 해당 컬럼에 반드시 값이 기록되어야 하는 경우 사용 삽입 / 수정 시 NULL값을 허용하지 않도록 컬럼레벨에서 제한 1. 테이블 만들기 CREATE TABLE USER_USED_MN( USER_NO..
· ON/Oracle
데이터 딕셔너리 자원을 효율적으로 관리하기 위한 다양한 정보를 저장하는 시스템 테이블 데이터 딕셔너리라는 사용자가 테이블을 생성하거나 사용자를 변경하는 등의 작업을 할때 데이터베이스 서버에 의해 자동으로 갱신되는 테이블 - User_tables : 자신의 계정이 소유한 객체 등에 관한 정보를 조회할 수 잇는 딕셔너리 뷰 DDL( DATA DEFINITION LANGUAGE) 객체(OBJECT)를 만들고(CREATE), 수정(ALTER)하고, 삭제(DROP) 등 데이터의 전체 구조를 정의하는 언어로 주로 DB관리자, 설계자가 사용함 (실제 취업을 하면 이미 만들어진 경우가 많지만, 우리 프로젝트 때는 직접 만들어야함) DML :데이터 조작 언어 (테이블에 데이터를 삽입, 수정, 삭제) DDL : 데이터정의..
· ON/Oracle
SUBQUERY 하나의 SELECT 문장의 절 안에 포함된 또 하나의 SELCET 문장이다. 메인쿼리를 위해 보조하는 역할이며 SELECT, FROM, WHERE, HAVING 절에서 사용가능 서브쿼리 사용 예시 - 1) 사원명이 노옹철인 사람의 부서코드 조회 SELECT DEPT_CODE FROM EMPLOYEE WHERE EMP_NAME='노옹철'; 2) 부서코드가 D9인 직원을 조회 SELECT EMP_NAME, DEPT_CODE FROM EMPLOYEE WHERE DEPT_CODE = 'D9'; 3) 부서코드가 노옹철사원과 같은 소속의 직원 명단 조회 SELECT EMP_NAME, DEPT_CODE FROM EMPLOYEE WHERE DEPT_CODE = (SELECT DEPT_CODE FROM ..
· ON/Oracle
TCL(TRANSACTION CONTROL LANGUAGE) 트랜잭션 제어 언어 COMMIT(트랜젝션 종료 후 저장), ROLLBACK(트렌젝션 수정), SAVEPOINT(임시저장)가 있다. 1. TRANSACTION이란? 데이터베이스의 논리적 연산 단위 데이터 변경사항을 묶어 하나의 트랜젝션에 담아 처리를 한다. 트렌젝션의 대상이 되는 데이터는 DML에 INSERT,UPDATE,DELETE 정말 쉽게는 장바구니라고 생각하면 편하다. 2. COMMIT 메모리버퍼(트랜젝션)에 임시 저장된 변경사항을 DB에 반영 위에서 트랜젝션이란 장바구니라고 했는데, 커밋은 마트카서 장바구니에 담아 결제까지 한 상황이다. 3.ROLLBACK 메모리 버퍼(트렌젝션)에 임시 저장된 데이터 변경 사항을 삭제하고 마지막 COMM..
· ON/Oracle
DML (Data Manipulation Language) 데이터 조작 언어, 테이블에 값을 삽입하거나 테이블에 값을 삽입하거나(INSERT), 수정하거나(DUPATE), 삭제(DELETE)하는 구문 1. INSERT(삽입) 테이블에 새로운 행을 추가하는 구문 1) INSERT INTO 테이블명 VALUES(데이터,데이터,...) 테이블에 모든 컬럼에 대한 값을 INSERT 할때 사용 INSERT 하고자 하는 컬럼이 모든 컬럼인 경우 컬럼명 생략 가능 단, 컬럼의 순서를 지켜서 VALUES에 값을 기입해야함 INSERT INTO EMPLOYEE2 VALUES (901,'박도비','000101-2345678','jnaa.tistory.com','01011112222', 'D1','J3','S3',50000..
· ON/Oracle
JOIN 하나 이상의 테이블에서 데이터를 조회하기 위해 사용하며, 수행결과는 하나 이상의 Result Set으로 나옴 ✔ 관계형 데이터 베이스에서 SQL를 이용해서 테이블 간 관계는 '칼럼'이 연결고리가 된다. JOIN 작성 방법은 2가지가 있다. 작성 방법 크게 ANSI구문과 오라클 구문으로 나뉘고 ANSI에서 USING과 ON을 쓰는 방법으로 나뉜다. 1. 내부조인(INNER JOIN) == 등가조인(EQUAL JOIN) 연결되는 컬럼의 값이 일치하는 행들만 조인됨 1) 연결에 사용할 두 컬럼명이 다른 경우 -- EMPLOYEE 테이블, DEPARTMENT 테이블을 참조하여 -- 사번, 이름, 부서코드, 부서명 조회 ANSI SELECT EMP_ID,EMP_NAME,DEPT_CODE,DEPT_TITL..
· ON/Oracle
GROUP BY / HAVING SELECT문 해석 순서 5 : SELECT 컬럼명 AS 별칭, 계산식, 함수식 1 : FROM 참조할 테이블명 2 : WHERE 컬럼명 | 함수식 비교연산자 비교값 3 : GROUP BY 그룹을 묶을 컬럼명 4 : HAVING 그룹함수식 비교연산자 비교값 6 : ORDER BY 컬럼명 | 별칭 | 컬럼순번 정렬방식 [NULLS FIRST | LAST]; 실행 순서 : FROM > WHERE > GROUP BY > HAVING > SELECT > ORDER BY 1) GROUP BY 같은 값들이 여러개 기록된 컬럼을 가지고 같은 값들을 하나의 그룹으로 묶음 GROUP BY 컬럼명 | 함수식, ... 그룹으로 묶은 값에 대해서 SELECT절에서 그룹 함수를 사용한다. --E..
박도비
비전공자의 개발자 도전기