+ 00 00 0000

Have any Questions?

13_Simple Coding – Table – CUD – 기본 요약

13_Simple Coding – Table – CUD – 기본 요약

📃 요약

전세계 기업시장에서 굉장히 활용 많이 하는 관계형 DB 로 오라클이 있음.
상용 가격은 굉장히 비싸고, 유지보수 비용도 굉장히 높은것으로 알려져 있음.
마이크로서비스가 활성화 되면서 예전과 달리 비싼 비용의 오라클보다 무료 DB 로 전환하는 사례도 나타나고 있음
주로 서비스업체 중심으로 Mysql / Maria DB 가 많이 활용되고 SI 프로젝트는 아직도 전통의 강자 오라클이 많이 사용되고 있음

요소 기술 :

– Basic : SQL

📃 기술 구현

스펙 :

- SQL Developer
- Oracle SQL

📃 테이블 기초

- CRUD : 약어 , DB 또는 실무 프로젝트 많이 사용하는 용어
- C(CREATE 문(생성)), R(READ, SELECT 문(조회)), U(UPDATE 문(수정)), D(DELETE 문(삭제))
- 테이블 의미 : DB(데이터베이스)에서 자료를 저장하는 곳(논리적 공간)

1. 테이블 생성

1) 테이블 생성 :

- DDL( DATA DEFINITION LANGUAGE : 데이터 정의어(용어))
- NUMBER(크기)   : 숫자 자료형, (실수, 정수 등)
- VARCHAR2(크기) : 문자열 자료형, 가변자료형 (VS CHAR(크기): 고정자료형)
사용법 : 
    CREATE TABLE 테이블명(
        컬럼명 자료형(크기),
        ...
    );

예 : 
CREATE TABLE DEPT(
        DNO NUMBER(2),
        DNAME VARCHAR2(14),
        LOC   VARCHAR2(13)
);

2) 테이블 복사

테이블 구조 + 데이터 복사
사용법 : 
       CREATE TABLE 복사할테이블명
       AS
       SELECT * FROM 원본테이블;

예 :
CREATE TABLE DEPT_COPY
AS
SELECT * FROM DEPARTMENT;

3) 테이블 구조 복사

테이블 구조 : 데이터 제외
사용법 : 
       CREATE TABLE 복사할테이블명
       AS
       SELECT * FROM 원본테이블
       WHERE 거짓조건;

예 :
CREATE TABLE DEPT_COPY2
AS
SELECT * FROM DEPARTMENT
WHERE 1=2; -- 거짓조건 아무거나 붙이면 데이터 빼고 복사됨

4) 테이블 / 컬럼 주석

- 테이블/컬럼에 상세 설명을 붙일 수 있음
사용법 : 테이블 주석 달기
    COMMENT ON TABLE 테이블명 IS '테이블주석';

예 :
COMMENT ON TABLE DEPT IS '부서정보';

사용법 : 컬럼 주석 달기 
    COMMENT ON COLUMN 테이블명.컬럼명 IS '컬럼주석';

예 :    
COMMENT ON COLUMN DEPT.DNO IS '부서번호';
COMMENT ON COLUMN DEPT.DNAME IS '부서명';
COMMENT ON COLUMN DEPT.LOC IS '부서위치';

5) 테이블 삭제 :

- DROP TABLE 테이블명;
DROP TABLE DEPT_COPY;

6) 트랜잭션 관리 :

- 영구반영 : INSERT/UPDATE/DELETE 에 대해서 영구 반영됨, 취소 불가
- 취소    : INSERT/UPDATE/DELETE 에 대해서 취소 가능
-- 취소 : ROLLBACK;
ROLLBACK;

-- 영구 반영 : 취소(ROLLBACK)불가상태
-- 의미 : 영구 반영하면 다른 유저가 현재 생성한/수정/삭제한 데이터를 볼 수 있음
COMMIT;

7) 데이터 생성 :

- INSERT
사용법) 
    INSERT INTO 테이블명(컬럼명, 컬럼명2, ...)
    VALUES(값, 값2, ...); -- 데이터 추가

예 : 
-- 예제) DEPT_COPY 테이블에 데이터 INSERT
INSERT INTO DEPT_COPY(DNO, DNAME, LOC)
VALUES(10, 'ACCOUNTING', 'NEW YORK'); -- 데이터 추가

-- NULL 값도 추가 가능
INSERT INTO DEPT_COPY(DNO, DNAME, LOC)
VALUES(40, 'OPERATIONS', NULL); -- 데이터 생성

-- 있는 컬럼을 제외하면 자동으로 NULL 이 입력됨
INSERT INTO DEPT_COPY(DNO, DNAME)
VALUES(30, 'SALES'); -- 데이터 생성

-- 영구 반영 : 다른 사람이 변경된 데이터를 볼 수 있음
COMMIT;

8) 데이터 수정 :

- UPDATE
사용법) 
    UPDATE 테이블명
    SET
      컬럼명 = 변경할값
    WHERE 컬러명 = 값; (조건)

예 : 
UPDATE DEPT_COPY
SET
    DNAME = 'PROGRAMMING'
WHERE DNO = 10;

-- 영구 반영 : 다른 사람이 변경된 데이터를 볼 수 있음
COMMIT;

9) 데이터 삭제 :

- DELETE
사용법) 
    DELETE (FROM) 테이블명
    WHERE 컬럼명 = 값;

-- 예제) 10번 부서를 삭제하세요
DELETE FROM DEPT_COPY
WHERE DNO = 10;
SELECT * FROM DEPT_COPY;

-- 영구 반영
COMMIT;

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다