用SQL代码写计划执行

zhaoanle 2010-09-17 03:59:38
好久没来CSDN了,现在有个问题,请各位大大帮下。

有这几个语句,如果说我希望在查询分析器中写一个执行计划,因为我现在无法使用企业管理器来制定计划。

1.下面的语句我希望在每天2点的时候在数据库:database 中执行一次,如何写代码呢?
2.如果SQL Server代理没有打开,怎么写代码把这个服务打开?而且是让他系统启动时自动打开。

请各位大大赐教


delete a from jzGeneralTollData a
left join jzContractRent b on a.ContractRentID = b.ID
left join jzContract c on c.ID = b.ContractID
where c.EndDate = GetDate() and c.ContractStatusID = 2 and a.Tolled = 0
go
update jzRentableHouse set IsHadRent = 0
where HouseID in(select HouseID from jzContractRent a left join jzContract b on a.ContractID = b.ID where b.EndDate = GetDate() and b.ContractStatusID = 2)
go
update jzHouseCustomer set LesseeID = 0
where HouseID in(select HouseID from jzContractRent a left join jzContract b on a.ContractID = b.ID where b.EndDate = GetDate() and b.ContractStatusID = 2)
go
update b set b.ContractStatusID = 3 from jzContractRent a left join jzContract b on a.ContractID = b.ID where b.EndDate = GetDate() and b.ContractStatusID = 2
go
...全文
71 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhaoanle 2010-09-18
  • 打赏
  • 举报
回复
是必须要直接写代码做计划,因为无法用企业管理器。只能传输代码过去执行。

[Quote=引用楼主 zhaoanle 的回复:]
好久没来CSDN了,现在有个问题,请各位大大帮下。

有这几个语句,如果说我希望在查询分析器中写一个执行计划,因为我现在无法使用企业管理器来制定计划。

1.下面的语句我希望在每天2点的时候在数据库:database 中执行一次,如何写代码呢?
2.如果SQL Server代理没有打开,怎么写代码把这个服务打开?而且是让他系统启动时自动打开。

请各位大大赐教


delet……
[/Quote]
zhaoanle 2010-09-18
  • 打赏
  • 举报
回复
好的谢谢
「已注销」 2010-09-17
  • 打赏
  • 举报
回复
将服务的启动从手工方式改为自动启动方式
  exec xp_cmdshell 'scm -Action 7 -Service mssqlserver -SvcStartType 2'
「已注销」 2010-09-17
  • 打赏
  • 举报
回复
  启动
  use master
  go
  xp_cmdshell 'net start SQLSERVERAGENT'
  停止
  use master
  go
  xp_cmdshell 'net stop SQLSERVERAGENT'
Rotel-刘志东 2010-09-17
  • 打赏
  • 举报
回复
服务-sql server agent -启动一下了。
做个代理了。
水族杰纶 2010-09-17
  • 打赏
  • 举报
回复
exec xp_cmdshell   'net stop sqlserveragent ' --停止 
exec xp_cmdshell 'net start sqlserveragent ' --启动
ws_hgo 2010-09-17
  • 打赏
  • 举报
回复
写在作业里面
dawugui 2010-09-17
  • 打赏
  • 举报
回复
每天2点?

用定时作业。

定时作业的制定

企业管理器
--管理
--SQL Server代理
--右键作业
--新建作业
--"常规"项中输入作业名称
--"步骤"项
--新建
--"步骤名"中输入步骤名
--"类型"中选择"Transact-SQL 脚本(TSQL)"
--"数据库"选择执行命令的数据库
--"命令"中输入要执行的语句:
EXEC 存储过程名 ... --该存储过程用于创建表

--确定
--"调度"项
--新建调度
--"名称"中输入调度名称
--"调度类型"中选择你的作业执行安排
--如果选择"反复出现"
--点"更改"来设置你的时间安排


然后将SQL Agent服务启动,并设置为自动启动,否则你的作业不会被执行

设置方法:
我的电脑--控制面板--管理工具--服务--右键 SQLSERVERAGENT--属性--启动类型--选择"自动启动"--确定.

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧