[펌] Examples of Calendaring Expressions

Posted by
2013. 11. 4. 16:13 Oracle

Examples of Calendaring Expressions

 

The following examples illustrate simple repeat intervals. For simplicity, it is assumed that there is no contribution to the evaluation results by the start date.

 

Run every Friday. (All three examples are equivalent.)

FREQ=DAILY; BYDAY=FRI; FREQ=WEEKLY; BYDAY=FRI; FREQ=YEARLY; BYDAY=FRI; 

Run every other Friday.

FREQ=WEEKLY; INTERVAL=2; BYDAY=FRI; 

Run on the last day of every month.

FREQ=MONTHLY; BYMONTHDAY=-1; 

Run on the next to last day of every month.

FREQ=MONTHLY; BYMONTHDAY=-2; 

Run on March 10th. (Both examples are equivalent)

FREQ=YEARLY; BYMONTH=MAR; BYMONTHDAY=10; FREQ=YEARLY; BYDATE=0310; 

Run every 10 days.

FREQ=DAILY; INTERVAL=10; 

Run daily at 4, 5, and 6PM.

FREQ=DAILY; BYHOUR=16,17,18; 

Run on the 15th day of every other month.

FREQ=MONTHLY; INTERVAL=2; BYMONTHDAY=15; 

Run on the 29th day of every month.

FREQ=MONTHLY; BYMONTHDAY=29; 

Run on the second Wednesday of each month.

FREQ=MONTHLY; BYDAY=2WED; 

Run on the last Friday of the year.

FREQ=YEARLY; BYDAY=-1FRI; 

Run every 50 hours.

FREQ=HOURLY; INTERVAL=50; 

Run on the last day of every other month.

FREQ=MONTHLY; INTERVAL=2; BYMONTHDAY=-1; 

Run hourly for the first three days of every month.

FREQ=HOURLY; BYMONTHDAY=1,2,3; 

Here are some more complex repeat intervals:

Run on the last workday of every month (assuming that workdays are Monday through Friday).

FREQ=MONTHLY; BYDAY=MON,TUE,WED,THU,FRI; BYSETPOS=-1 

Run on the last workday of every month, excluding company holidays. (This example references an existing named schedule called Company_Holidays.)

FREQ=MONTHLY; BYDAY=MON,TUE,WED,THU,FRI; EXCLUDE=Company_Holidays; BYSETPOS=-1 

Run at noon every Friday and on company holidays.

FREQ=YEARLY;BYDAY=FRI;BYHOUR=12;INCLUDE=Company_Holidays 

Run on these three holidays: July 4th, Memorial Day, and Labor Day. (This example references three existing named schedules—JUL4, MEM, and LAB—where each defines a single date corresponding to a holiday.)

JUL4,MEM,LAB 
출처 : 클릭

 

오라클 스케줄러, Toad 사용하기

Posted by
2013. 10. 30. 15:53 Oracle

오라클 인터페이스 작업을 위해 Job을 사용하려다 Scheduler를 사용하라는 얘기에 적용해 보았다.

오라클 : 10.0.2
Toad : 9.0.1.8
OS : Windows 7 Enterprise

큰 흐름은 스케줄러의 스케줄(일정)을 만들고 스케줄러 잡에 그 스케줄을 적용하는 것이다. 스케줄을 만들지 않고 스케줄러 잡에서 직접 스케줄을 생성할 수도 있으니 참고하자. 스케줄을 따로 만드는 것은 하나의 스케줄로 여러개의 스케줄러 잡에 적용할 수 있다는 장점이 있다. 특정한 시간에 인터페이스가 되는 정보가 많다면 스케줄(일정)을 먼저 만든 후 적용하면 추후에 일괄 변경하기도 간편해 진다.

아래 Schema에 들어간 데이터는 각자의 세팅에 따라 달라진다.

※ 이미지 중 뭉게진 부분은 토드에서 자동으로 잡거나 직접 선택하는 부분입니다. 노출이 되면 문제가 될 수도 있어서 필터를 했습니다.

1.1 Toad의 Sched.Schedules 탭으로 이동하여 새 스케줄 만들기 버튼을 클릭한다.

 

 

1.2 스케줄명을 입력하고 반복 기간(Repeat Interval)을 오른쪽 클릭하여 'Every Minute'를 선택한다.


 

 

1.3 왼쪽 아래에 있는 Show SQL 버튼으로 스크립트를 확인해 보자.

 

 

1.4 그냥 확인차 생성된 스크립트를 확인하자. 나중에 다시 확인할 수 있다.

 

 

1.5 오른쪽에 있는 OK 를 눌러 스케줄을 생성합니다. 화면이 전환되면 새로고침을 눌러 생성된 스케줄을 확인한다.

 

 

2.1 Sched.Jobs 탭을 선택한 후 새로 만들기 버튼을 누르자.

 

 

2.2 기본 정보(Basic Info) 탭의 내용을 아래와 같이 내용을 채우자.

 

 

2.3 Schedule Info 탭에서 찾기 버튼을 클릭하여 1.1에 만들었던 스케줄을 선택하자.

 

 

2.4 앞에서 생성한 스케줄을 선택한 후 OK 버튼을 클릭한다.

 

 

2.5 Schedule Info 의 내용이 채워진것을 확인하자.

 

 

2.6 만약 1.1에 해당하는 스케줄 작업을 하지 않았다면 아래와 같이 직접 생성할 수도 있다.

 

 

2.7 Program Info 탭에서 아래와 같이 선택한다.

 

 

2.8 Program Action 옆의 버튼을 클릭하여 프로시져를 선택할 수 있는 화면을 팝업한 후, Object Name에서 스케줄을 걸어야 할 프로시져를 선택한 후 OK버튼을 클릭한다.

 

 

2.9 추가된 내용을 확인한다. 여기서 맨 뒤의 세미콜론을 삭제한다. (삭제하지 않으면 생성 시 에러가 발생한다.)

 

 

2.10 Job Arguments 탭은 Program Info 탭에서 프로시져를 선택하면 나타나게 된다. 선택한 프로시져에 인자가 필요하다면 여기 탭에 세팅할 수 있다. (저는 없어서 그냥 패스했습니다.)

 

 

2.11 스크립트를 확인해 보자. 좀 길다.

 

 

2.12 OK 버튼을 누른 후 새로고침을 하면 새로 만들어진 스케줄러 잡을 확인할 수 있다. 오른쪽에 해당 스케줄잡에 대한 정보가 나온다. 탭 중 Run Log 탭을 클릭하면 실행되는 이력을 확인할 수 있다.

 

 

2.13 번외) 본인은 해당 프로시져에 에러가 났다는 로그가 나타났다. 해당 내용을 확인했다면 원인을 찾아 수정하도록 한다.

 

 

일단은 여기까지이다.

p.s : ㅜㅜ;; 이거 하느라 프로시져에 문제가 발생하는 줄 알게됬음. 다행히 문제는 해결함 ;;;;

 

출처 : http://findfun.tistory.com/216

 

clob select 시 hugeclob 으로 표시될때 내용보기

Posted by
2013. 7. 17. 14:59 Oracle

HUGECLOB 데이터타입은 일반 쿼리로 불러올 경우 HUGECLOB의 내용이 보이지 않는다.

때문에 아래와 같이  


SELECT DBMS_LOB.SUBSTR( 컬럼, 500) FROM TABLE

 

사용하여 SELECT 한다. 

 

SELECT DBMS_LOB.SUBSTR(칼럼명, DBMS_LOB.GETLENGTH(칼럼명), 1)   --> 전체 row 뿌리기
           , DBMS_LOB.INSTR(칼럼명, 'test', 1, 1 --> 검색된 내용에 대한 디스플레이
  FROM  테이블명
WHERE  DBMS_LOB.INSTR(칼럼명, 'test', 1, 1) <> 0;

사용법
DBMS_LOB.SUBSTR(CLOB칼럼, 전체 row 가져오는 길이, offset)
DBMS_LOB.INSTR(CLOB칼럼, 검색된 단어, offset, 몇 번째에 있는 검색된 단어)

'Oracle' 카테고리의 다른 글

[펌] Examples of Calendaring Expressions  (0) 2013.11.04
오라클 스케줄러, Toad 사용하기  (0) 2013.10.30
오라클 설치 없이 Toad 사용하기  (0) 2013.07.04

오라클 설치 없이 Toad 사용하기

Posted by
2013. 7. 4. 18:53 Oracle

1. 오라클 인스턴트 클라이언트 다운로드
http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/winsoft.html
위 사이트에서 Instant Client Downloads 를 다운로드 받습니다.
제가 받을 때 최신버전은 Version 11.2.0.1.0 입니다.

Instant Client Package - Basic: All files required to run OCI, OCCI, and JDBC-OCI applications
 instantclient-basic-win32-11.2.0.1.0.zip (51,458,190 bytes)


다운받은 파일을 적당한 위치에 압축을 해제합니다.
(이번 포스팅에서는 C:\instantclient 에 압축 해제)


2. 환경변수 설정
환경 변수의 시스템 변수에 아래를 추가합니다.

TNS_ADMIN: C:\instantclient
Path: [기존 Path];%TNS_ADMIN% 
LNS_LANG: KOREAN_KOREA.KO16MSWIN949



3. tnsnames.ora 파일 설정
오라클 접속 정보를 가지고 있는 tnsnames.ora 파일을 설정합니다.
(%TNS_ADMIN% 경로에 새로 생성하여 넣어줍니다.)

TEST1 =
  (DESCRIPTION_LIST=
    (DESCRIPTION =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.8)(PORT = 1521))
      )                                                               
    (CONNECT_DATA =
      (SID = TESTDB1)
    )
  )
)
TEST2 =
  (DESCRIPTION_LIST=
    (DESCRIPTION =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.9)(PORT = 1521))
      )                                                               
    (CONNECT_DATA =
      (SID = TESTDB2)
    )
  )
)


위와 같이 설정을 하면 TEST1, TEST2 가 추가되며 IP와 SID는 보이는 대로 설정을 할 수 있습니다.


4. 토드 실행
TNS 탭에서 Database를 선택하고 user,password 를 설정하고 접속 버튼을 통해 데이터베이스에 접속을 할 수 있습니다.
Installed Clients 에 아까 처음에 내려받은 Instant Client - 11.2.0.1.0 이 보이네요~