SQL Server代理在哪里,我需要它吗?

时间:2011-10-14 14:19:56

标签: c# sql-server sql-server-2008 nhibernate

我想将2005 db升级到2008,使用2008 Sql Server Mgt Studio执行此操作,并在最后收到警告。问题:

  1. 我不再拥有SQL Server 2008的磁盘;我是否需要安装或启动代理?如果我无法安装Agent,升级到2008会有效吗?
  2. 如果代理可能已安装但尚未启动,那么它在哪里?我看到另一个SO帖子说这是一个登录选项,但我没有在任何地方看到它。
  3. 顺便说一句,我唯一真正的动机是日期时间类型已经成为一个问题。人们在日期和日期时间2之前需要比18世纪更早的日期时做了什么?

    来自:复制数据库向导

    的警告

    SQL Server代理似乎未在目标服务器上运行。如果SQL Server代理未在目标服务器上运行,则“复制数据库向导”将无法正常运行。你想继续吗?

2 个答案:

答案 0 :(得分:15)

尝试:

start-> run->services.msc

搜索sql server代理并查看它是否已启动

答案 1 :(得分:4)

  

人们在日期和日期时间2之前需要比18世纪更早的日期时做了什么?

这是SQL Server限制(可能还有其他DBMS)。我想说,因为C#(.NET)可以处理像“01/01/0001”这样的日期,你总是可以将日期转换为,将其作为 BIGINT保存到数据库中并在检索后重新创建/重新生成它。例如,要将今天的日期转换为,您可以执行以下操作:

var dt = DateTime.Now.ToBinary();

当然,这是一个黑客攻击:)

以下行会将转换回日期:

var dt1 = DateTime.FromBinary(dt);