본문 바로가기

오라클81

BINARY_FLOAT,BINARY_DOUBLE 오라클에서는 숫자 데이터타입을 표현하기 위한 데이터타입이 3개가 존재합니다. 제일 많이 알고 있는 NUMBER와 오늘 소개할 BINARY_FLOAT,BINARY_DOUBLE입니다. BINARY_FLOAT는32bit의 부동 소수점 숫자를 표현할 때 사용하며, BINARY_DOUBLE는 64bit 부동 소수점 숫자를 표현할 때 사용됩니다. 설명 BINARY_FLOAT IEEE 32bit 부동 소수점 범위 +/3.4E+38 정밀도(precision) 6-7 자리 4bytes 필요. BINARY_DOUBLE IEEE 64 bit 부동소수점 범위 +/1.7E+308 정밀도(Precision) 15자리 8bytes 필요. 최소값과 최대값으로 들어갈 수 있는 값입니다. Value BINARY_FLOAT BINARY_.. 2020. 9. 11.
Temp Tablespace Temporary(임시) 테이블스페이스는 임시 세그먼트라고 불리는 작업용 디스크 영역을 보관하기 위한 특수한 테이블스페이스입니다. Temp 테이블스페이스에 일반적인 오브젝트(테이블,인덱스)를 저장할 수 없습니다. DBCA를 사용해서 데이터베이스를 생성하면 기본적으로 TEMP라는 이름으로 생성됩니다. TEMP는 데이터베이스의 Sort 작업과 글로벌 임시테이블을 저장하는데 사용됩니다. Default TEMP테이블스페이스가 없으면 SYSTEM 테이블스페이스를 TEMP영역으로 사용하게 됩니다. SYSTEM 테이블스페이스는 DB의 중요한 정보들을 가지고 있는 중요한 테이블스페이스므로 해당 테이블을 TEMP영역으로 사용하게되면 성능상의 문제가 발생한 가능성도 높아지고, SYSTEM테이블스페이스의 단편화 현상이 발생.. 2020. 9. 8.
특정 테이블의 컬럼의 Update만 인식하는 Trigger 생성하기 트리거란 일정 이벤트(DML)이 일어났을 때 자동으로 수행되는 사용자 정의 프로시저입니다. 보통은 테이블의 DML 작업이 있을 때 발동되는 트리거가 대부분인데요. 이번에는 테이블 내의 특정 컬럼만 트리거를 거는 방법을 알아보겠습니다. 시나리오는 특정 테이블의 컬럼에 Update가 되면 다른 테이블에 그 값이 Insert 되는 트리거를 생성하고 설정된 컬럼과 설정되지 않은 컬럼을 Update해보고 비교해보도록 하겠습니다. 테스트 테이블은 sample schema인 emp테이블을 활용하겠습니다. TEST@ysbae>create table tb_tri_test as select * from emp; Update값을 받을 테이블을 생성해줍니다. create table a_tr (sal number(10)); 트.. 2020. 8. 27.
컬럼사이즈 변경 및 데이터타입 변경 테이블의 컬럼사이즈를 변경해달라는 요청이 가끔 있는데요, (저도 지원은 해주지만 까먹기 때문에...) 블로그에 기록차 적어놓고 한번더 정리하는 글을 남기려고 합니다. 컬럼사이즈변경 명령어 alter table [테이블명] modify ([컬럼명] [데이터타입]) 특징 - 컬럼사이즈 늘리는것은 바로 적용할 수 있습니다. (ex varchar2(20) -> varchar2(100)) - 컬럼사이즈를 줄이는것은 아래와 같은 제약사항이 있습니다. 변경을 하려는 컬럼에 값에 변경하려는 컬럼보다 큰 값이 들어가 있으면 안됩니다. 그렇지 않으면 ORA 에러가 발생합니다. ORA-01440: column to be modified must be empty to decrease precision or scale 컬럼사이.. 2020. 8. 25.