文章编号: 909089 - 最后修改: 2007年11月2日 - 修订: 1.5

修复: 当您试图在 SQL Server 2000 中运行 TRANSACT-SQL 查询的访问冲突可能发生

Hotfix download is available可用热修复补丁程序
察看和要求热修复补丁程序下载
BUG #: 471331 (SQL Server 8.0)
Microsoft 分布 Microsoft SQL Server 2000 修复程序作为一个可下载的文件。 因为该修补程序是累积性、 每个新版本包含的所有修补程序和所有安全修复的都包含上一个 SQL Server 2000 修复 发行。

本页

展开全部 | 关闭全部

概要

本文介绍以下有关此修补程序版本:
  • 通过修补程序包修复的问题
  • 安装此修补程序包的先决条件
  • 在安装修补程序包后是否必须重新启动计算机
  • 是否已被其他姝 や 慨琛 ョ ▼ 搴忓寘取代姝 や 慨琛 ョ ▼ 搴忓寘
  • 是否必须进行注册表中的任何更改
  • 修补程序包中包含的文件

症状

当试图从 Microsoft SQL Server 2000 中的应用程序运行 TRANSACT-SQL 查询时可能会发生访问冲突。 当以下条件为真时,将发生此问题:
  • TRANSACT-SQL 查询包含 UNION 运算符。
  • TRANSACT-SQL 查询使用并行执行计划。
此问题时浠 ヤ 笅閿欒娑堟伅是 SQL Server 错误日志中记录:
<Date> <Time>服务器 Microsoft SQL Server 2000 8.00.2039 (X 86 Intel) 可能 3 2005 23: 18: 38 版权 (c) 1988年-2003 Microsoft Corporation Windows NT 5.2 上的企业版 (生成 3790: Service Pack 1)...2005年-08-31 12:21:15.46 spid54 DBCC TRACEON 2861 服务器进程 ID (SPID) 54。
<Date> <Time>spid57 打开错误日志是 Files\Microsoft SQL Server\MSSQL\log\exception.log 的失败。
<Date> <Time>spid57 打开错误日志是 Files\Microsoft SQL Server\MSSQL\log\exception.log 的失败。
<Date> <Time>spid57 打开错误日志是 Files\Microsoft SQL Server\MSSQL\log\exception.log 的失败。
<Date> <Time>spid57 使用 dbghelp.dll 版本"4.0.5"
* 堆栈转储发送到是 Files\Microsoft SQL Server\MSSQL\log\SQLDump0920.txt
<Date> <Time>spid57 SqlDumpExceptionHandler: 进程 5984 生成致命异常 c0000005 EXCEPTION_ACCESS_VIOLATION。 SQL Server 正在终止此进程。
* ******************************************************************************* * * BEGIN STACK DUMP:
*
<Date> <Time>57 spid
*
* 异常地址 = 0040560F
* 异常代码 = c0000005 EXCEPTION_ACCESS_VIOLATION
* 访问冲突发生读取地址 000000B8
* d b o。 P 我 H D 14 00 64 00 62 00 6f 00 2e 00 50 00 49 00 48 00 44 00
* e l e t e _ L e v 65 00 6 c 00 65 00 74 00 65 00 5f 4 c 00 65 00 00 76 00
* e l 2 §2 2 65 00 6 c 00 32 00 00 00 00 00 a7 32 00 09 04 00 01 32
* F49 § 2 一个 03 00 46 34 39 00 00 a7 08 00 09 04 00 01 32 07 00 61
* cdgood 63 64 67 6f 6f 64
*
* -------------------------------------------------------------------------------
* 短堆栈转储 * 0040560F Module(sqlservr+0000560F) * 00603FF5 Module(sqlservr+00203FF5) (SQLExit + 0009C4FE)
* 0053577C Module(sqlservr+0013577C)
* 00420A14 Module(sqlservr+00020A14)
* 00874277 Module(sqlservr+00474277) (GetIMallocForMsxml + 0007F6F7)
* 00875200 Module(sqlservr+00475200) (GetIMallocForMsxml + 00080680)
* 00875611 Module(sqlservr+00475611) (GetIMallocForMsxml + 00080A91)
* 005BB2F6 Module(sqlservr+001BB2F6) (SQLExit + 000537FF)
* 005BAAB9 Module(sqlservr+001BAAB9) (SQLExit + 00052FC2)
* 00866D25 Module(sqlservr+00466D25) (GetIMallocForMsxml + 000721A5)
* 00868002 Module(sqlservr+00468002) (GetIMallocForMsxml + 00073482)
* 00868B1E Module(sqlservr+00468B1E) (GetIMallocForMsxml + 00073F9E)
* 0087E1CD Module(sqlservr+0047E1CD) (GetIMallocForMsxml + 0008964D)
* 0087E422 Module(sqlservr+0047E422) (GetIMallocForMsxml + 000898A2)
* 0055C692 Module(sqlservr+0015C692)
* 41075309 Module(ums+00005309) (ProcessWorkRequests + 000002D9 线路 456 + 00000000)
* 41074978 Module(ums+00004978) (ThreadStartRoutine + 00000098 线路 263 + 00000007)
* 7C34940F Module(MSVCR71+0000940F) (endthread + 000000AA)
* 77E66063 Module(kernel32+00026063) (GetModuleFileNameA + 000000EB)
* -------------------------------------------------------------------------------
* 转储线程-spid = 57,PSS = 0x530731f8,EC = 0x53073528
此外,的应用程序中记录下列事件日志:

事件 1

错误 17055 <Date> <Time> MSSQLSERVER DUALP Server <ComputerName>\<Login> 17310: SqlDumpExceptionHandler: 进程 1780年生成致命异常 c0000005 EXCEPTION_ACCESS_VIOLATION。 SQL Server 正在终止此进程。

事件 2

信息 17052 <Date> <Time> MSSQLSERVER DUALP 服务器 n/A 错误: 17883,严重性: 1,状态: 0 进程 56:51 并被非-生成计划 1 上似乎 (c84) UMS 上下文 0x0029DF20

原因

鍑虹幇姝 ら 棶棰樼殑鍘熷洜鏄已编译计划的执行计划中错误地转换运算符。

解决方案

安装程序不会安装此修补程序正确上 x 基于 x64 的系统。 当以下条件为真时,将发生此安装问题:
  • 系统使用高级微设备 (AMD) AMD64 处理器体系结构或 Intel 扩展内存 64 技术 (EM64T) 处理器体系结构。

    注意 在使用 Intel Itanium 处理器体系结构的系统不会发生此问题。
  • 系统运行 64 位版本的 Microsoft Windows 服务器操作系统。
  • 系统正在运行一个 32 位版本的 SQL Server 2000。
我们修正的开始版本 8.00.2244 的 SQL Server 2000 的更高版本中此安装问题。 当在基于 x64 的系统上运行 SQL Server 2000 客户请求姝 や 慨琛 ョ ▼ 搴忓时,我们将提供一个生成的包含此修补程序和可以基于 x64 的系统上正确安装的。 8.00.2244 版或更高版本,将为我们提供的生成。

淇 ˉ 绋嬪簭淇 ℃ 伅锛

Microsoft 提供了受支持的修补程序。 但是,此修补程序用于更正本文所述鐨勯棶棰樸。 仅对出现这一特定问题的系统应用此修补程序。

可供下载修补程序是否没有"提供修补程序下载"部分中,此知识库文章的顶部。 如果未显示此部分,并不将申请提交到 Microsoft 客户服务和支持以获取此修复程序。

注意 如果出现其他问题,或者任何故障排除,则需要您可能要创建一个单独的服务请求。 将正常收取支持费用将应用于其他支持问题和对于该特定修补程序无法解决的问题。 有关完整列表的 Microsoft 客户服务和支持的电话号码,或创建一个单独的服务请求,璇疯闂笅闈 ㈢ 殑 Microsoft 缃戠珯锛
http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)
注意 "提供修补程序下载"窗体显示该修补程序是可用的语言。 如果您看不到您的语言,则是一个修复程序不能用于该语言。

系统必备组件

  • Microsoft SQL Server 2000 Service Pack 4 (SP4)

    有关如何获取 SQL Server 2000 SP4 的信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    290211? (http://support.microsoft.com/kb/290211/ ) 如何获取最新的 SQL Server 2000 service pack

重新启动信息

没有应用此修补程序后重新启动计算机。 但是,修补程序安装停止,然后重新启动 MSSQLSERVER 服务。

注册表信息

您不必更改注册表。

修补程序文件信息

此修补程序包含解决本文列出了该问题所必需的文件。 此修补程序可能不包含将产品完全更新到最新版本所必需的所有文件。

姝 や 慨琛 ョ ▼ 搴忕殑鑻辨枃鐗堝叿鏈具有文件属性 (或更新的文件属性) 在下表中列出。 日期和时间杩欎簺鏂囦欢鐨勬列出协调世界时 (UTC)。 当您查看文件信息时,将转换为本地时间。 若要 UTC 与本地时间之间差值使用控制面板中日期和时间工具中的 时区 选项卡。
SQL Server 2000 32年位版本
收起该表格展开该表格
文件名称鏂囦欢鐗堟湰文件大小日期时间平台
Dtsui.dll2000.80.2171.01,593,3442005 年十一月 4 日07: 10x86
Impprov.dll2000.80.2171.0102,4002005 年十一月 4 日07: 10x86
Mssdi98.dll8.11.50523.0239,1042005 年六月 6 日22: 46x86
Ntwdblib.dll2000.80.2171.0290,8162005 年十一月 4 日07: 10x86
Odsole70.dll2000.80.2171.069,6322005 年十一月 4 日07: 10x86
Pfclnt80.dll2000.80.2171.0430,0802005 年十一月 4 日07: 10x86
Replprov.dll2000.80.2171.0237,5682005 年十一月 4 日07: 10x86
Semexec.dll2000.80.2171.0856,0642005 年十一月 4 日07: 10x86
Sqlagent.exe2000.80.2171.0323,5842005 年十一月 4 日05: 27x86
Sqldiag.exe2000.80.2171.0118,7842005 年十一月 4 日06: 09x86
Sqldmo.dll2000.80.2171.04,362,2402005 年十一月 4 日07: 10x86
Sqlfth75.dll2000.80.2171.0102,4002005 年十一月 4 日05: 33x86
Sqlservr.exe2000.80.2171.09,158,6562005 年十一月 4 日07: 10x86
Sqlsort.dll2000.80.2171.0589,8242005 年十一月 4 日07: 10x86
Stardds.dll2000.80.2171.0176,1282005 年十一月 4 日07: 10x86
Svrnetcn.dll2000.80.2171.0110,5922005 年十一月 4 日07: 10x86
Ums.dll2000.80.2171.035,3282005 年十一月 4 日07: 10x86
Sqlevn70.rll2000.80.2171.045,0562005 年十一月 4 日07: 10不适用
SQL Server 2000 Itanium 体系结构版本
收起该表格展开该表格
文件名称鏂囦欢鐗堟湰文件大小日期时间平台
Impprov.dll2000.80.2171.0244,7362005 年十一月 4 日07: 13IA-64
Mssdi98.dll8.11.50523.0758,7842005 年六月 6 日22: 46IA-64
Odsole70.dll2000.80.2171.0150,5282005 年十一月 4 日07: 12IA-64
Pfclnt80.dll2000.80.2171.01,187,8402005 年十一月 4 日07: 30IA-64
Replprov.dll2000.80.2171.0538,6242005 年十一月 4 日07: 19IA-64
Sqlagent.exe2000.80.2171.01,061,3762005 年十一月 4 日07: 37IA-64
Sqldiag.exe2000.80.2171.0334,3362005 年十一月 4 日07: 32IA-64
Sqldmo.dll2000.80.2171.013,860,3522005 年十一月 4 日07: 41IA-64
Sqlfth75.dll2000.80.2171.0246,7842005 年十一月 4 日07: 15IA-64
Sqlservr.exe2000.80.2171.024,921,6002005 年十一月 4 日13: 24IA-64
Sqlsort.dll2000.80.2171.0617,4722005 年十一月 4 日05: 23IA-64
Svrnetcn.dll2000.80.2171.0427,5202005 年十一月 4 日07: 27IA-64
Sqlevn70.rll2000.80.2171.035,3282005 年十一月 4 日13: 24不适用
注意 由于文件相关性渶鏂颁慨澶嶇 ▼ 搴忔垨鍖呭惈杩欎簺鏂囦欢功能还可能包含其他文件。

替代方法

若要到 ヨ 瑙 e 喅姝 ら 棶棰橈使用一个或两个以下方法:
  • 重写 TRANSACT-SQL 查询和修改创建不同的执行计划的索引。
  • 使用下面的查询提示关闭并行查询。
    OPTION (MAXDOP 1)

状态

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

更多信息

有关命名 SQL Server 更新架构的详细信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
822499? (http://support.microsoft.com/kb/822499/ ) 用于 Microsoft SQL Server 软件更新程序包的新命名架构
Microsoft 使用时发布后,Microsoft 纠正了软件的术语有关的详细信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
824684? (http://support.microsoft.com/kb/824684/ ) 用于描述 Microsoft 软件更新该标准术语的说明

这篇文章中的信息适用于:
  • Microsoft SQL Server 2000 Desktop Engine (Windows)
  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Personal Edition
  • Microsoft SQL Server 2000 标准版
  • Microsoft SQL Server 2000 Workgroup Edition
  • Microsoft SQL Server 2000 Enterprise Edition 64-bit
关键字:?
kbmt kbautohotfix kbhotfixserver kbbug kbfix kbqfe KB909089 KbMtzh
机器翻译机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 909089? (http://support.microsoft.com/kb/909089/en-us/ )
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。
 

文章翻译

 

Related Support Centers