当您试图保存 SQL Server 管理 Studio 中的维护计划时的错误: 错误消息: Guid 应包含 4 个虚线 (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) 的 32 位数字"

文章翻译 文章翻译
文章编号: 922651 - 查看本文应用于的产品
错误 #: 443411 (SQLBUDT)
展开全部 | 关闭全部

症状

请考虑以下情形:
  • 在 Microsoft SQL Server 管理制作室中连接到实例的 Microsoft SQL Server 2005 集成服务 (SSIS)。
  • 您可以从存储在不同位置的集成服务程序包导入的维护计划。集成服务包是维护计划从以前导出的。
  • 在 SQL Server 管理 Studio,您修改维护计划,然后您尝试保存维护计划。
在这种情况下您会收到以下错误消息:
Guid 应包含 4 个虚线 (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) 的 32 位数字。

原因

因为未将记录维护计划的更新 sysmaintplan_subplans 系统表中 (从集成服务包中导入维护计划时,会出现此问题。

替代方法

若要变通解决此问题,手动创建维护计划的导入的记录。若要这样做,请按照下列步骤操作:
  1. 启动 SQL Server 管理 Studio,然后连接到 SQL Server 2005 实例。
  2. 若要获取您导入的维护计划的 GUID,运行下列语句。
    use msdb
    go
    select id from sysdtspackages90 where name='NewPlan'
    go
    
    注意这些语句假定您导入一个名为 NewPlan SQL Server 2005 的默认实例中的维护计划。

    获取在结果中的 id 列中 GUID:
    6a7fa469-f5db-4ff4-b153-5f11926477b7
  3. 创建名为 NewPlanJob 的作业,然后单击 分类 列表中的 数据库维护
  4. 为您在步骤 3 中创建的作业,创建一个新的步骤,名为 NewPlanStep,然后单击在 类型 列表中的 SQL Server Integration Services 包
  5. 关闭 新建作业 对话框。
  6. 若要获取您在步骤 4 中创建步骤的 GUID,运行下列语句。
    use msdb
    go
    select job_id from sysjobsteps where step_name='NewPlanStep'
    go
    
    您获得以下 GUID job_id 列中的结果:
    e85564e2-92a1-4b70-89df-329f152ccd97
  7. 获取导入维护计划时不更新 sysmaintplan_subplans 系统表中的记录的 GUID。若要这样做,请按照下列步骤操作:
    1. 启动商业智能开发制作室,然后创建一个新的集成服务项目。
    2. 在解决方案资源管理器中,SSIS 包,用鼠标右键单击,然后单击 添加现有程序包
    3. 从正确的程序包位置,请向当前项目中添加 NewPlan 维护计划。
    4. 在解决方案资源管理器中,双击 $ 导入的包。
    5. 在设计视图中单击该任务具有类似于以下内容的名称:
      报告任务的 subplan-{1EFB298F-1313-4A26-8986-A5C9C5A0C2AB}
      在此的示例 1EFB298F-1313年-4A26-8986-A5C9C5A0C2AB 是 GUID。
  8. 要向其中 sysmaintplan_subplans 系统表中插入所需的记录,请 SQL Server 管理 Studio 中运行下面的语句。
    insert into sysmaintplan_subplans (
    	subplan_id,
    	subplan_name,
    	subplan_description,
    	plan_id,
    	job_id
    )values (
    	'1EFB298F-1313-4A26-8986-A5C9C5A0C2AB',
    	'NewPlan','',
    	'6A7FA469-F5DB-4FF4-B153-5F11926477B7',
    	'E85564E2-92A1-4B70-89DF-329F152CCD97'
    )
    GO
  9. 若要修复命令,您在步骤 3 中创建的作业的运行下面的语句。
    update sysjobsteps 
    set command='/Server YourServer /SQL "Maintenance Plans\NewPlan" /set "\Package\NewPlan.Disable;false"'
    where step_name='NewPlanStep'
    注意在此语句中,YourServer 是服务器名称的占位符。

状态

Microsoft 已经确认这是在"适用于"一节中列出的 Microsoft 产品中的错误。

属性

文章编号: 922651 - 最后修改: 2007年11月20日 - 修订: 1.2
这篇文章中的信息适用于:
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL 2005 Server Enterprise
  • Microsoft SQL 2005 Server Workgroup
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Standard X64 Edition
关键字:?
kbmt kbexpertiseadvanced kbtshoot kbsql2005ssis kbbug KB922651 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 922651
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com