database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
ㆍMS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MS-SQL Q&A 5436 게시물 읽기
No. 5436
특정시간에 작동하는 쿼리문좀 알려주세요 . 부탁드립니다.
작성자
홍연
작성일
2009-11-05 13:13
조회수
8,781

create proc dbo.update1

as

UPDATE mc_ConfRoom SET dtCloseDate=DATEADD(HOUR, 1, dtOpenDate) WHERE

dtOpenDate<DATEADD(DAY,-2,getdate()) AND dtCloseDate IS NULL


1. 일단 이 쿼리는 돌아갑니다. 매일 새벽 3시에 동작하는 스케줄러를 작성하여 주세요..

이 글에 대한 댓글이 총 2건 있습니다.

USE [msdb]
GO

BEGIN TRANSACTION
DECLARE @ReturnCode INT
SELECT @ReturnCode = 0

IF NOT EXISTS (SELECT name FROM msdb.dbo.syscategories WHERE name=N'[Uncategorized (Local)]' AND category_class=1)
BEGIN
EXEC @ReturnCode = msdb.dbo.sp_add_category @class=N'JOB', @type=N'LOCAL', @name=N'[Uncategorized (Local)]'
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback

END

DECLARE @jobId BINARY(16)
EXEC @ReturnCode =  msdb.dbo.sp_add_job @job_name=N'샘플처리',
  @enabled=1,
  @notify_level_eventlog=0,
  @notify_level_email=0,
  @notify_level_netsend=0,
  @notify_level_page=0,
  @delete_level=0,
  @description=N'설명이 없습니다.',
  @category_name=N'[Uncategorized (Local)]',
  @owner_login_name=N'계정아이디', @job_id = @jobId OUTPUT
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback

EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=N'샘플업데이트',
  @step_id=1,
  @cmdexec_success_code=0,
  @on_success_action=1,
  @on_success_step_id=0,
  @on_fail_action=2,
  @on_fail_step_id=0,
  @retry_attempts=0,
  @retry_interval=0,
  @os_run_priority=0, @subsystem=N'TSQL',
  @command=N'update1', -- 실행쿼리
  @database_name=N'데이터베이스명',
  @flags=0
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
EXEC @ReturnCode = msdb.dbo.sp_update_job @job_id = @jobId, @start_step_id = 1
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
EXEC @ReturnCode = msdb.dbo.sp_add_jobschedule @job_id=@jobId, @name=N'샘플체크',
  @enabled=1,
  @freq_type=4,
  @freq_interval=1,
  @freq_subday_type=4,       -- 실행반복주기 4:매일 16:한달
  @freq_subday_interval=20,
  @freq_relative_interval=0,
  @freq_recurrence_factor=0,
  @active_start_date=20090324, --시작일
  @active_end_date=99991231, -- 종룡일
  @active_start_time=30000,    -- 시작시간
  @active_end_time=235959    -- 종료시간
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
EXEC @ReturnCode = msdb.dbo.sp_add_jobserver @job_id = @jobId, @server_name = N'(local)'
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
COMMIT TRANSACTION
GOTO EndSave
QuitWithRollback:
 IF (@@TRANCOUNT > 0) ROLLBACK TRANSACTION
EndSave:

임진표(운가라)님이 2009-11-05 15:24에 작성한 댓글입니다.
이 댓글은 2009-11-05 15:25에 마지막으로 수정되었습니다.

보통. sp 작성 -> DB Agent로 job 생성해서 스케쥴대로 실행. 


만약 Agent를 실행할수없는 상황에서는 window batch 파일로 윈도우 자체내에 있는 [예약된 작업]을 이용하는게. 


스케쥴러를 설마 sp로 작성하는건 좀...

갈매기001님이 2009-11-05 16:05에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
5439조인 쿼리 질문 [4]
손님
2009-11-08
5828
5438MS-SQL 파일그룹 압축을 해제하는 방법 좀 알려주세요.
이재규
2009-11-06
6344
5437풀텍스트 서치 문의 드립니다.
새벽소리
2009-11-06
5778
5436특정시간에 작동하는 쿼리문좀 알려주세요 . 부탁드립니다. [2]
홍연
2009-11-05
8781
5435datetime 의 컬럼 비교시 [2]
궁금궁금
2009-11-04
6723
5433ASP에서 쿼리문 실행 도중에 [1]
김봉달
2009-11-03
5973
5432SQL 버전은 어떤걸 설치하는게 좋을까요? [2]
조현철
2009-11-03
6071
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다