truncate 2

2012.01.10 SQL 6일차(DELETE, Truncate, Drop들의 차이점, 데이터 딕셔너리)

자료를 삭제하는 명령어는 3가지가 있다. delete, truncate, drop 이 중 ELETE 는 DML명령어 TRUNCATE, DROP은 DDL명령어이다. 이것으로 인한 트랜젝션관리의 차이가 생길 수 있다. 이것 외에도 차이점이 존재하는데, 고객테이블이 존재하는데 100만행(건)의 자료가 있고, row칼럼은 데이터에 번호를 매긴 칼럼이다. (총 고객테이블의 용량은 100M) 만약에 DELETE FROM 고객 WHERE row BETWEEN 1 and 90만 하게 되면 남는 행은 10만건이 되게 된다. 하지만, 테이블 자체의 용량은 100M그대로이다. 우리 눈에는 지웠다고 표시되지만, 사실상 살아있다. TRUNCATE 고객; 의 경우에는 데이터가 다 지워지고, 용량도 지워지지만, 테이블의 구조는 살..

Oracle/SQL 2012.01.11

2012.01.10 SQL 6일차(DDL에 들어가는 데이터타입들에 대한 설명, DDL)

데이터 타입 숫자 number(p, s) p : 전체자리 수, s: 소수점 이하 예) number(5,3) : 12.345, number(3) : 218 ... number : 그냥 number만 쓰게 되면 총 38자리 양의정수 날짜 date 문자 char(n) : n 바이트 예약한 그대로 끝까지 사용하는 것(최대 2000bytes) varchar2(n) : n바이트 예약하고, 남는 자리가 있으면 반환(최대 4000bytes) varchar2의 단점 : 메모리반환 후에 update했는데 할당된 길이보다 길게 update해버렸을 때에는 곤란합니다. 이 경우에는 char는 별 문제가 되지 않습니다. (즉, update시에는 varchar2가 불리합니다.) (보통 insert를 update보다 훨씬 많이 수행..

Oracle/SQL 2012.01.11