делаю job по примерам, не работает
Вот это не работает
USE [test14]
CREATE TABLE [dbo].[1](
[i] [int] NULL
) ON [PRIMARY ]
GO
DECLARE @job varchar(400)
set @job = N'Test15'
EXEC msdb.dbo.sp_add_job @job_name = @job
DECLARE @step varchar(400)
set @step = @job + N' Step1 only'
EXEC msdb.dbo.sp_add_jobstep
@job_name = @job,
@step_name = @step,
@subsystem = N'TSQL',
@command = N'use [test14] ;
go
insert into test14.dbo.[1] values (777)',
@retry_attempts = 2,
@retry_interval = 5 ;
DECLARE @schedule varchar(400)
set @schedule = @job + N'schedule'
EXEC msdb.dbo.sp_add_jobschedule @job_name = @job,
@name = @schedule,
@freq_type = 4, -- Daily
@freq_interval = 4, --(daily)
@freq_subday_type = 0x4, -- Minutes
@freq_subday_interval = 1, -- every minute
@active_start_time = 010101, -- past
@active_start_date = 19900101 ; -- past
Может я ещё чего то не знаю...
P.S. MSSQL 2005, Windows Authentication
Re: делаю job по примерам, не работает
Здравствуйте, Caracrist, Вы писали:
C>Может я ещё чего то не знаю...
А в каком состоянии создается расписание и джоб? скорее всего, по умолчанию, и то, и другое неактивно.
Re[2]: делаю job по примерам, не работает
Здравствуйте, sunsquirel, Вы писали:
S>Здравствуйте, Caracrist, Вы писали:
C>>Может я ещё чего то не знаю...
S>А в каком состоянии создается расписание и джоб? скорее всего, по умолчанию, и то, и другое неактивно.
@freq_interval = 1 , -- changed from 4 to 1
и добавил:
EXEC msdb.dbo.sp_add_jobserver @job_name = @job, @server_name = '(local )'
получил новую ошибку что SQL Server Agent не запущен...
посмотим что будет дальше...
Re[2]: делаю job по примерам, не работает
Здравствуйте, sunsquirel, Вы писали:
S>Здравствуйте, Caracrist, Вы писали:
C>>Может я ещё чего то не знаю...
S>А в каком состоянии создается расписание и джоб? скорее всего, по умолчанию, и то, и другое неактивно.
вот сделал всё explicitly enabled ... и ни результата ни ошибки...
USE [test14]
CREATE TABLE [dbo].[1](
[i] [int] NULL
) ON [PRIMARY ]
GO
DECLARE @jid varchar(4)
set @jid = '20'
DECLARE @job varchar(400)
set @job = N'Test' + @jid
DECLARE @cm varchar(400)
set @cm = N'insert into test14.dbo.[1] values (' + @jid + N')' -- updated
EXEC msdb.dbo.sp_add_job
@job_name = @job,
@enabled = 1 -- updated
DECLARE @step varchar(400)
set @step = @job + N' Step1 only'
EXEC msdb.dbo.sp_add_jobstep
@job_name = @job,
@step_name = @step,
@subsystem = N'TSQL',
@command = @cm,
@retry_attempts = 2,
@retry_interval = 5
DECLARE @schedule varchar(400)
set @schedule = @job + N'schedule'
EXEC msdb.dbo.sp_add_jobschedule
@job_name = @job,
@name = @schedule,
@enabled = 1, -- updated
@freq_type = 4, -- Daily
@freq_interval = 1, -- updated
@freq_subday_type = 0x4, -- Minutes
@freq_subday_interval = 1, -- every minute
@active_start_time = 010101
EXEC msdb.dbo.sp_add_jobserver
@job_name = @job,
@server_name = '(local )'
GO
Re: делаю job по примерам, не работает
От:
_d_m_
Дата: 03.09.09 00:38
Оценка:
Здравствуйте, Caracrist, Вы писали:
C>Вот это не работает
C>P.S. MSSQL 2005, Windows Authentication
А это случаем, не Express редакция?
Re[2]: делаю job по примерам, не работает
Здравствуйте, _d_m_, Вы писали:
___>Здравствуйте, Caracrist, Вы писали:
C>>Вот это не работает
C>>P.S. MSSQL 2005, Windows Authentication
___>А это случаем, не Express редакция?
была Express, но я поставил Enterprise
И всё равно не работает...
Re[3]: делаю job по примерам, не работает
От:
_d_m_
Дата: 03.09.09 05:57
Оценка:
Здравствуйте, Caracrist, Вы писали:
C>>>P.S. MSSQL 2005, Windows Authentication
___>>А это случаем, не Express редакция?
C>была Express, но я поставил Enterprise
C>И всё равно не работает...
Служба SQL Server Agent запущена?
Re[4]: делаю job по примерам, не работает
Здравствуйте, _d_m_, Вы писали:
___>Здравствуйте, Caracrist, Вы писали:
C>>>>P.S. MSSQL 2005, Windows Authentication
___>>>А это случаем, не Express редакция?
C>>была Express, но я поставил Enterprise
C>>И всё равно не работает...
___>Служба SQL Server Agent запущена?
да, конечно.
declare @rc int
DECLARE @jid varchar(4)
set @jid = '31'
DECLARE @job varchar(400)
set @job = N'Test' + @jid
DECLARE @cm varchar(400)
set @cm = N'insert into test14.dbo.[1] values (' + @jid + N')'
EXEC @rc = msdb.dbo.sp_add_job
@job_name = @job,
@enabled = 1
print @rc
DECLARE @step varchar(400)
set @step = @job + N' Step1 only'
EXEC @rc = msdb.dbo.sp_add_jobstep
@job_name = @job,
@step_name = @step,
@subsystem = N'TSQL',
@command = @cm,
@database_name = N'test14',
@retry_attempts = 2,
@retry_interval = 5
print @rc
DECLARE @schedule varchar(400)
set @schedule = @job + N'schedule'
EXEC @rc = msdb.dbo.sp_add_jobschedule
@job_name = @job,
@name = @schedule,
@enabled = 1,
@freq_type = 4, -- Daily
@active_start_date = 20090902, -- past
@active_start_time = 182700, --
@freq_interval = 1,
@freq_subday_type = 2, -- seconds
@freq_subday_interval = 10, -- every 10 seconds
@freq_relative_interval = 0, -- unused for daily
@freq_recurrence_factor = 0,
@active_end_date = 99991231, -- date which schedule becomes inactive (Dec. 31, 9999)
@active_end_time = 235959 -- time which schedule becomes inactive (23:59:59)
print @rc
EXEC @rc = msdb.dbo.sp_add_jobserver
@job_name = @job,
@server_name = '(local )'
print @rc
GO
выдаёт:
0
0
0
0
Значит всё типа ок...
Re[4]: делаю job по примерам, не работает
Здравствуйте, _d_m_, Вы писали:
___>Здравствуйте, Caracrist, Вы писали:
C>>>>P.S. MSSQL 2005, Windows Authentication
___>>>А это случаем, не Express редакция?
C>>была Express, но я поставил Enterprise
C>>И всё равно не работает...
___>Служба SQL Server Agent запущена?
нашел интересную табличку:
sysjobservers
и наконец ошибку:
The job failed. Unable to determine if the owner (DDDD\uuuu) of job Test1 has server access (reason: Could not obtain information about Windows NT group/user 'DDDD\uuuu', error code 0x5. [SQLSTATE 42000] (Error 15404) The statement has been terminated. [SQLSTATE 01000] (Error 3621)).
что бы это значило...
P.S. будем искать ...
Re[5]: делаю job по примерам, не работает
C>что бы это значило...
C>P.S. будем искать ...
EXEC @rc = msdb.dbo.sp_add_job
@owner_login_name = N'sa',
Re: делаю job по примерам, не работает
получилось !
Вот если кому интересно...
declare @rc int,
@jid varchar(4)
set @jid = '1'
DECLARE @job varchar(400)
set @job = N'Test' + @jid
DECLARE @cm varchar(400)
set @cm = N'insert into test14.dbo.[1] values (' + @jid + N')'
EXEC @rc = msdb.dbo.sp_add_job
@owner_login_name = N'sa',
@job_name = @job,
@enabled = 1
print @rc
DECLARE @step varchar(400)
set @step = @job + N' Step1 only'
EXEC @rc = msdb.dbo.sp_add_jobstep
@job_name = @job,
@step_name = @step,
@subsystem = N'TSQL',
@command = @cm,
@database_name = N'test14',
@retry_attempts = 2,
@retry_interval = 5
print @rc
DECLARE @schedule varchar(400)
set @schedule = @job + N'schedule'
EXEC @rc = msdb.dbo.sp_add_jobschedule
@job_name = @job,
@name = @schedule,
@enabled = 1,
@freq_type = 4, -- Daily
@active_start_date = 20090903, -- past
@active_start_time = 0, --
@freq_interval = 1,
@freq_subday_type = 2, -- seconds
@freq_subday_interval = 10, -- every 10 seconds
@freq_relative_interval = 0, -- unused for daily
@freq_recurrence_factor = 0,
@active_end_date = 99991231, -- date which schedule becomes inactive (Dec. 31, 9999)
@active_end_time = 235959 -- time which schedule becomes inactive (23:59:59)
print @rc
EXEC @rc = msdb.dbo.sp_add_jobserver
@job_name = @job,
@server_name = '(local )'
print @rc
GO
Пока на собственное сообщение не было ответов, его можно удалить.
Удалить