日期:2014-05-17  浏览次数:20480 次

高分求一段sql语句,如何用sql语句建立作业
谁帮我写一下在 2012-3-5 12:12:12 的时间将数据库名为aaa的数据库改为bbb的数据库的sql语句

------解决方案--------------------
use master
go
sp_renamedb N'aaa',N'bbb'
go


放到作业里面,定个时间 2012-3-5 12:12:12 即可。注意agent账号的权限问题。
------解决方案--------------------
-- 2007-8-16/14:58 上生成的脚本
-- 由: sa
-- 服务器: 192.168.0.36

BEGIN TRANSACTION            
  DECLARE @JobID BINARY(16)  
  DECLARE @ReturnCode INT    
  SELECT @ReturnCode = 0     
IF (SELECT COUNT(*) FROM msdb.dbo.syscategories WHERE name = N'[Uncategorized (Local)]') < 1 
  EXECUTE msdb.dbo.sp_add_category @name = N'[Uncategorized (Local)]'

  -- 删除同名的警报(如果有的话)。
  SELECT @JobID = job_id     
  FROM   msdb.dbo.sysjobs    
  WHERE (name = N'WriteMsgOnTime')       
  IF (@JobID IS NOT NULL)    
  BEGIN  
  -- 检查此作业是否为多重服务器作业  
  IF (EXISTS (SELECT  * 
              FROM    msdb.dbo.sysjobservers 
              WHERE   (job_id = @JobID) AND (server_id <> 0))) 
  BEGIN 
    -- 已经存在,因而终止脚本 
    RAISERROR (N'无法导入作业“WriteMsgOnTime”,因为已经有相同名称的多重服务器作业。', 16, 1) 
    GOTO QuitWithRollback  
  END 
  ELSE 
    -- 删除[本地]作业 
    EXECUTE msdb.dbo.sp_delete_job @job_name = N'WriteMsgOnTime' 
    SELECT @JobID = NULL
  END 

BEGIN 

  -- 添加作业
  EXECUTE @ReturnCode = msdb.dbo.sp_add_job @job_id = @JobID OUTPUT , @job_name = N'WriteMsgOnTime', @owner_login_name = N'sa', @description = N'没有可用的描述。', @category_name = N'[Uncategorized (Local)]', @enabled = 1, @notify_level_email = 0, @notify_level_page = 0, @notify_level_netsend = 0, @notify_level_eventlog = 2, @delete_level= 0
  IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback 

  -- 添加作业步骤
  EXECUTE @ReturnCode = msdb.dbo.sp_add_jobstep @job_id = @JobID, @step_id = 1, @step_name = N'WriteMsg', @command = N'INSERT INTO Msg(MsgToUser, MsgTitle, MsgContent ,MsgDateTime )
VALUES(''张三'',''注意休息'',''需要定时休息一下啊'',GETDATE() )', @database_name = N'TestDB', @server = N'', @database_user_name = N'', @subsystem = N'TSQL', @cmdexec_suc