1.异常信息
通过SQL Server Enterprise Manager来修改table结构时,出现如下异常:ODBC error: [Microsoft][ODBC SQL Server Driver]Invalid cursor state
2.工作环境:
MS SQL Server 2004 SP3a
SQL Server Hot fix 8.00.0859 (当时是为了修复Microsoft Reporting Services V1.0的bug才安装的)
Windows Server 2003
3.查看Select @@Version 运行结果:
Microsoft SQL Server 2000 - 8.00.859 (Intel X86) Sep 18 2003 12:53:45 Copyright (c) 1988-2003 Microsoft Corporation Standard Edition on Windows NT 5.2 (Build 3790: )
4.Microsoft的相关KB
FIX: An invalid cursor state oclearcase/" target="_blank" >ccurs after you apply Hotfix 8.00.0859 or later in SQL Server 2000
URL: http://support.microsoft.com/kb/831997
RESOLUTION:
A supported hotfix is now available from Microsoft, but it is only intended to correct the problem that is described in this article. Only apply it to systems that are experiencing this specific problem. This hotfix may receive additional testing. Therefore, if you are not severely affected by this problem, Microsoft recommends that you wait for the next Microsoft SQL Server 2000 service pack that contains this hotfix.
To resolve this problem immediately, contact Microsoft Product Support Services to obtain the hotfix.
Microsoft已经提供了对应的hotfix来解决上述问题,不过需要联系Microsoft Support Services来获取hotfix。我没有在网上发现该hotfix的下载。
目前,Microsoft SQL Server 2004 Service Pack 4.0(处于测试阶段)还没有正式推出,郁闷。只好通过Query Analyzer使用SQL Script脚本来完成,如:
ALTER TABLE AppRemotingLogger ALTER COLUMN Message VARCHAR(800)
(修改数据表AppRemotingLogger的Message字段)
Updated:
根据bengxia的指点,可以从如下的URL下载到了SQL2000-KB810185-8.00.0878-ENU.exe 。下载地址为:http://support.microsoft.com/?kbid=838166
上述hotfix修复了该bug。