DB

    [Oracle]DB function , procedure 내의 임의 string 찾기

    SELECT *FROM USER_SOURCEWHERE 1=1AND TYPE = 'FUNCTION'AND TEXT LIKE '%DAY_MILK_QNTTY%'ORDER BY NAME, LINE 빨간 부분에 원하는 값을 넣으면 해당 내용이 포함된 function의 line 을 찾을 수 있다.FUNCTION -> PROCEDURE로 변경하면 프로시저 내의 STRING도 확인가능

    ORACLE 예약어(ORA-00904 부적합한 식별자)

    ORACLE DB TABLE 생성시 TABLE명이나 COLUMN 명에 ORACLE 예약어가 포함되면 ORA-00904 부적합한 식별자라는 오류가 뜬다.근데 부적합한 식별자라는 말만 있지 왜 부적합한지라던가 하는 이유는 잘 나와있지 않다. 구글검색해보면 여러가지 결과가 나오는데 대부분이 문법오류다. 즉, 콤마나 띄어쓰기 등의 문제로 문법오류가 나서 안되는 경우가 대부분인데 본인의 경우에는 오라클 예약어를 쓰면 안된다는(안된다기 보다는 제약이 있다) 사실을 모르고 테이블명이나 컬럼명에 예약어를 사용하여 테이블 생성이 안되었다. 예약어를 컬럼명이나 테이블명에 사용하고 싶으면 큰따옴표("")로 묶어주면 된다. CREATE TABLE "SELECT"(..........); 와 같은 방식으로 하면 된다 개인적인 결..

    [ORACLE] DUAL 테이블

    sys스키마에 존재하지만 모든 계정에서 접근이 가능한 DUMMY TABLE oracle에 의해 자동생성사용자가 함수계산 등을 필요로 할때 임시로 사용가능 ex) SELECT SEQ_TB_BOARD_IDX.NEXTVAL FROM DUAL다음 시퀀스 인덱스를 가져와서 사용하기 위해 쿼리 작성

    [ORACLE]NVL함수

    NVL(value,0) value가 null이면 0반환그렇지 않으면 value값을 반환 Query문에서 사용 ex) UPDATE TB_BOARD SET HIT_CNT = NVL(HIT_CNT,0) + 1 WHERE IDX = #{IDX}(조회수 증가하는 쿼리)