테이블생성 및 DML 기초


--오라클에서 사용되는 자료형

문자형: char(크기)     <= 고정크기  char(20)     'abc' =>전체공간 20개 잡힌다.

        varchar2(크기) <= 가변크기  varchar2(20) 'abc' =>전체공간 3개 잡힌다.

                       <= 최대크기  4000  한글=>3byte

        clob           <= character large object binary(문자 대용량) 

                       <= 용량제한 없다(저장공간이 허용한는 한:2G~4G)

숫자형: number(길이)                       

        number(전체크기,소숫점)

        int  == number(38) 와 동일

날짜형: date   <= 년월일시분초     

        

--테이블 생성 : 데이터를 저장할 수 있는 물리적구조(DDL)

create table sungjuk

(

    no     int,  --필드명  자료형순으로 선언

    name   varchar2(100),

    kor    number(3), --  0 ~ 999까지 저장

    eng    number(3),

    mat    number(3) 

)


--데이블 구조 확인하기...

desc sungjuk;


--[데이터 추가(DML)]

insert into sungjuk values( 1,'일길동' , 88 , 99, 77 );

--입력되는 필드를 나열

insert into sungjuk(name,no,kor,eng,mat) values('이길동',2,99,44,66);

--null

insert into sungjuk(no,kor,eng,mat) values(3,88,44,55);



commit; -- insert된 내용을 DB에 적용(저장) <= insert,update,delete만 Transaction에 저장

rollback; -- 현재까지 DML명령을 취소


--[데이터 수정(DML)]

--      테이블    필드=수정값      조건절

update sungjuk set kor = 100     where no=1;


--이런경우 이름이 이길동인 레코드가 모두 수정된다(주의)

update sungjuk set mat = 100     where name='이길동'; 


--[데이터 삭제(DML)]

--          테이블        조건절

delete from sungjuk where no = 2;



--조회

-- * : 모든필드를 추출


select  추출필드목록  <=필드선택

from    테이블(뷰)

where   조건절        <=레코드선택 (생략되면 모든레코드)

       

select * from sungjuk;


select no,name,kor,eng,mat ,

       kor+eng+mat tot,         --계산(연산)필드

       (kor+eng+mat)/3 as ave

from sungjuk;

'Programming > Oracle' 카테고리의 다른 글

[4일차-1] SubQuery(하위쿼리)  (0) 2013.08.27
[3일차] 제약조건  (0) 2013.08.27
[1일차] 계정생성  (0) 2013.08.27
[6일차] 뷰(View)  (0) 2013.08.27
[5일차-2] 날짜함수 정리  (0) 2013.08.26

+ Recent posts