Oracle data type

기혁·2023년 2월 14일
0

DBMS 학습

목록 보기
8/13
post-thumbnail

day05

📌 데이터 타입

  • 데이터 타입이란 컬럼이 저장되는 데이터 유형을 말한다.
  • 기본 데이터 타입은 문자형, 실수, 소수 ,자료형등의 여러
    데이터를 식별하는 타입이다.

📢 문자 데이터 타입

  • varchar2 가변길이로 저장된다.

📢 숫자형 데이터 타입

  • 대부분 NUMBER형을 사용한다.

  • P는 소수점을 포함한 전체 자릿수를 의미하고, S는 소수점
    자릿수를 의미한다.

  • NUMBER는 가변숫자이므로 P와 S를 입력하지 않으면
    저장 데이터의 크기에 맞게 자동으로 조절된다.

    입력값 타입 저장되는 값
    123.89 NUMBER 123.89
    123.89 NUMBER(3) 124 -- P가 3인데 반올림해서 올라감
    123.89 NUMBER(3,2) 오류
    123.89 NUMBER(4,2) 오류
    123.89 NUMBER(5,2) 123.89
    123.89 NUMBER(6,1) 123.9 --- .89에서 9가 반올림되서 .9로 된다.

📢 날짜 데이터 타입

  • 일반적으로는 날짜 데이터 타입은 DATE 타입이다.

📢 LOB데이터 타입

  • LOB이란 Large Object의 약자로 대용량 데이터를 처리할
    수 있는 데이터 타입이다.

📌 DDL (Data Definition Language)

  • 데이터의 구조를 정의하기 위한 테이블 생성, 삭제와 같은 명령어
  • create : 테이블 생성
  • drop : 테이블 삭제
  • alter : 테이블 수정
  • truncate : 테이블에 있는 모든 데이터 삭제

💡 테이블 생성 예시

CREATE TABLE EMPLOYEES2(
	employee_id		number(10),
	name			varchar2(20),
	salary			number(7,2)
);
``
  • 기존 테이블과 동일하게 작성
CREATE TABLE EMPLOYEES3
AS
SELECT * FROM  EMPLOYEES e ;
  • 테이블에 컬럼 추가
SELECT * FROM EMPLOYEES2 e ;

ALTER TABLE EMPLOYEES2 add(
	manager_id		varchar(10)
);
  • 컬럼 수정
ALTER TABLE EMPLOYEES2 modify(
	manager_id		varchar2(20)
);
  • 컬럼 삭제
ALTER TABLE EMPLOYEES2 DROP COLUMN manager_id;
SELECT * FROM EMPLOYEES2 e ;
  • 테이블 삭제
DROP TABLE EMPLOYEES3 ;
SELECT * FROM EMPLOYEES3 e ;
  • 데이터 입력 INSERT
SELECT * FROM EMPLOYEES2 e ;
INSERT INTO EMPLOYEES2 
VALUES (1,'테스트',30000);
  • TRUNCATE 데이터 포맷
SELECT * FROM  EMPLOYEES2 e ;
TRUNCATE TABLE EMPLOYEES2 ;

📌 데이터 조작어 (Data manipulation Language)

  • 데이터 조회 및 변형을 위한 명령어
  • select : 데이터 조회
  • insert : 데이터 입력
  • update : 데이터 수정
  • delete : 데이터 삭제
  • insert into 테이블명 values (값1, 값2, ...)
    -> 전체컬럼
  • insert into 테이블명 (컬럼1, 컬럼2, ..) values (값1, 값2, ..)
    -> 특정 컬럼
  • update 테이블명 set 컬럼1 = 값1, 컬럼2= 값2, ...
    where 조건..;
  • delete 테이블명 where 조건;

💡 예시

sample이라는 테이블에 deptno , deptname , deptloc , depmanger 라는 컬럼 지정

CREATE TABLE sample(
	deptNo 		number(20),
	deptName	varchar2(15),
	deptLoc		varchar2(15),
	depManager	varchar2(10)
);

예시 문제
데이터 삽입하기
10, 기획실 , 서울 , 홍길동
20, 전산실 , 부산 , 김말똥
30, 영업부 , 광주 , null

  SELECT * FROM SAMPLE s ;
INSERT INTO SAMPLE (deptNo, DEPTNAME ,
DEPTLOC , DEPMANAGER)
VALUES (10,'기획실','서울','홍길동')
;
INSERT INTO SAMPLE 
VALUES (20,'전산실', '부산', '김말똥')
;
INSERT INTO SAMPLE 
VALUES (30,'영업부', '광주', NULL)
;

💡 UPDATE 예시

deptno의 값이 30인 데이터을
50으로 수정하는 데이터이다.

UPDATE 	SAMPLE  SET DEPTNO = 50
WHERE 	DEPTNO = 30
;
SELECT * FROM  SAMPLE s ;

💡 예시

영업부의 지역을 인천으로 수정하라

영업부에 있는 지역이 광주에서 인천으로 바뀌는 모습이다.

UPDATE 	SAMPLE SET DEPTLOC = '인천'
WHERE 	DEPTNAME = '영업부'

DELETE 예시

영업부 삭제

DELETE sample
WHERE	deptname = '영업부';
;
profile
⭐️내가만든쿠키⭐️

0개의 댓글