반응형

oracle foreign key 생성/삭제

create table bbs (
 no number not null,
 id varchar2(20) not null,
 bbspasswd varchar2(20) not null,
 title varchar2(100) not null,
 content varchar2(1000) not null,
 regdate date not null,
 readcount number not null,
);

생성
SQL> ALTER TABLE 테이블명 ADD CONSTRAINT fk_bbs_id FOREIGN KEY(id) REFERENCES 참조되는 테이블명(id);

삭제
SQL> ALTER TABLE 테이블명 DROP CONSTRAINT fk_bbs_id;
반응형
반응형

DB - Oracle : # to_char()의 'FM90' 의 의미

'9'는 해당 자리 숫자를 의미하고, 없을경우 공백으로 표시

'0'은 해당 자리 숫자를 의미하고, 없을경우 '0'으로 표시 

'FM'은 좌우 공백 제거

반응형
반응형

Oracle,  Dual 이란?  Dummy? 

 

듀얼은 본래 테이블로서, 데이터베이스 엔진은 DUAL을 SELECT FROM할 때 테이블 상의 디스크 입출력을 수행하였다.

이러한 디스크 입출력은 일반적으로 논리적인 입출력으로(물리적인 디스크 접근을 동반하지 않음) 디스크 블록들이 보통 메모리에 이미 캐시되어 있는 상태였다.

이로 말미암아 듀얼 테이블로의 논리적 입출력의 양이 매우 컸다.

10g 릴리즈 1을 기점으로 오라클 데이터베이스는 최적화되어, 데이터베이스는 듀얼 테이블이 실제로 존재하더라도 더 이상 듀얼 테이블에 물리적·논리적 입출력을 수행하지 않는다.

 

SELECT 1+1 FROM DUAL;
SELECT 1 FROM DUAL;
SELECT USER FROM DUAL;
select sysdate from dual;

ex) SELECT 시퀀스.NEXTVAL FROM DUAL;
ex) SELECT SYSDATE FROM DUAL;
ex) SELECT CURRENT_DATE FROM DUAL;
ex) Merge into 내부에서 사용
    MERGE INTO 테이블명  별칭
    USING 대상테이블/뷰  별칭
    ON 조인조건
    WHEN MATCHED THEN
      UPDATE SET
       컬럼1=값1
       컬럼2=값2
    WHEN NOT MATCHED THEN
      INSERT (컬럼1,컬럼2,...)
           VALUES(값1,값2,...);

 

 

반응형
반응형

Oracle SQL Developer 에서 출력시 그리드(Grid) 나오게 하는 것. 

 

F5로 실행시 출력시트에 그냥 스크립트로 나와서 보기에 불편하다. 

F9 또는 Ctrl + Enter 를 하면 출력시 그리드(Grid)로 나온다. 

select * from dual;
select sysdate from dual;

 

 

반응형

+ Recent posts