소리소문 없이... 사랑도 명예도 이름도 남김 없이...
DexCore.net

DataBase/Oracle 116

오라클 연단위 달력 쿼리

출처 : http://bliseer.blogspot.com/2009_04_01_archive.html특정 기간의 평일/주말을 구분하는 통계 산출 때문에 연단위의 달력이 필요했는데,, 어느 분이 이미 정리한게 있어.. 쿼리를 약간 수정해서 응용했습니다.아래 붉은색으로 표시한 년월만 수정하면 원하는 기간으로 달력을 조회할 수 있습니다.--2011년 01월부터 12월 기간의 달력 생성 쿼리select dates, weekday, decode(weekday,'1','일','2','월','3','화','4','수','5','목','6','금','7','토') "weekday(요일)", week_cnt "week_cnt(주차)"from (select to_date..

DataBase/Oracle 2012.08.23

Oracle 랜덤 문자열 생성

출처 : http://blog.naver.com/csaiur/10044212394--랜덤 숫자 (양수/음수)SELECT DBMS_RANDOM.RANDOM FROM DUAL; --랜덤 숫자 (0~1 사이)SELECT DBMS_RANDOM.VALUE FROM DUAL;--랜덤 숫자 (1~1000 사이)SELECT DBMS_RANDOM.VALUE(1,1000) RANDOM FROM DUAL;--랜덤 숫자 (천억~조-1 사이)SELECT DBMS_RANDOM.VALUE(100000000000, 999999999999) RANDOM FROM DUAL;--대문자 20글자 랜덤SELECT DBMS_RANDOM.STRING('U', 20) STR FROM DUAL;--소문자 20글자 랜덤SELECT DBMS_RAND..

DataBase/Oracle 2012.08.23

ORA-02020: too many database links in use 에러 조치 방법

출처 : http://blog.naver.com/ees4man?Redirect=Log&logNo=30127702963 [증상] 다수의 DB링크를 포함한 쿼리 수행 시 아래 메시지 나옴. - Message : ORA-02020: too many database links in use [원인 및 해결방안] - 기본(Default)으로 DB_LINK는 4개로 되어 있음. 4를 원하는 만틈 늘려주면 해결 됨 * 현재 Open_links 수 확인쿼리 select name, value from v$parameter where name='open_links'; [해결방법 사례] 1. %ORACLE_HOME%\ora92\database\init[SID].ora의 open_links 항목에 개수를 바꾸어 준다. (없으면..

DataBase/Oracle 2012.08.23

Oracle Lock 확인

--락걸린 테이블 확인SELECT  do.object_name,  do.owner,  do.object_type,  do.owner,  vo.xidusn,  vo.session_id,  vo.locked_modeFROM   v$locked_object vo ,  dba_objects doWHERE   vo.object_id = do.object_id ;    --해당테이블이 락에 걸렸는지.. SELECT   A.SID,  A.SERIAL#,  B.TYPE,  C.OBJECT_NAMEFROM   V$SESSION A,  V$LOCK B,  DBA_OBJECTS CWHERE   A.SID=B.SID AND  B.ID1=C.OBJECT_ID    AND  B.TYPE='TM'  AND  C.OBJECT_NAM..

DataBase/Oracle 2012.08.11

Oracle Log

오라클도 기본적으로 로그를 남긴다 로그는 다음의 위치에 남으며 확인할 만한 가치가 있다. root:] cd $ORACLE_HOMEroot:/dbms1/oracle/app/oracle/product/......] cd dbsroot:/dbms1/oracle/app/oracle/product/....../dbs] vi configXXXX.ora 이 파일을 열면 로그가 어디에 저장되는지 위치를 알 수 있다. 필자의 경우는background_dump_dest = /dbms1/oracle/app/oracle/admin/YYYYY/bdump위와 같은 위치에 남아서 root:] cd /dbms1/oracle/app/oracle/admin/YYYYY/bdumproot:/dbms1/oracle/app/oracle/adm..

DataBase/Oracle 2012.08.09

오라클 커서(Oracle cursor) 관련 내용 [출처] 오라클 커서(Oracle cursor) 관련 내용|작성자 어린나무

[오라클 커서 ] * 커서 : 'sql이 하나 실행될때 마다 커서가 하나 열린다.' * 커서가 열리면 반드시 닫아줘야 한다. * 간혹: 'ORA-01000 : 최대 열기 커서 수를 초과' 에러가 발생하는데 , 이는 커서를 열고 커서를 닫지 않아서 이다. > jdbc프로그램 하면서 Preparestatement , Result 이런것들을 close() 하지 않아서 발생 ( Connection을 닫지 않았을 때는 'ORA-00020: maximum number of processes (100)' 와 같은 프로세스 수 에러가 발행한다.) > 또, 루프안에서 위 객체를 생성하였으면, 루프내에서 close해줘야 한다. 루프밖에서 한번 닫으면 안된다. ,예를 들어 루프안에서 10번 객체를 생성해 놓고, 루프밖에서 ..

DataBase/Oracle 2012.08.08

Maximum open cursor error에 관해

Maximum open cursor error에 관해 잡로 JDBC를 이용하여 프로그래밍 할 때 반복문(for, while)안에 Statement나 PreparedStatement등이 위치하는 경우엔 간혹 “ORA-01000: 최대 열기 커서 수를 초과했습니다” 라는 오류를 만날 수 있습니다. ============================== 오라클 서버에서 해야 할 일 ============================== 이 경우엔 우선 오라클 서버의 initSID.ora 파일에서 open_cursors 파라미터 값(기본값은 50)을 늘여 줄 수도 있지만 제가 봤을 때는 근본적인 해결책은 아닙니다. SQL문은 SQL문의 내용이 같아도 (host 변수를 사용해서 값만 바뀌고 SQL문은 그대로인 경..

DataBase/Oracle 2012.08.08
728x90
반응형