日期:2014-05-17  浏览次数:20461 次

遇到个问题,不知是不是个BUG,请高手看下!

IF OBJECT_ID('dbo.Sales', 'U') IS NOT NULL DROP TABLE dbo.Sales;
GO
CREATE TABLE dbo.Sales
(
  mnth DATE , 
  qty  INT 
);
INSERT INTO dbo.Sales(mnth, qty) 
SELECT '20071201', 100;
GO
SELECT * FROM dbo.Sales;
--报错:
--在执行批处理时出现错误。错误消息为: 在列“mnth”上的 GetBytes 尝试无效。GetBytes 函数只能用在 Text、NText 或 Image 类型的列上。

检查过了,是mnth的date类型导致,换个datetime就好了,但不知何故
select @@version
--Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (X64)   Jul  9 2008 14:17:44   Copyright (c) 1988-2008 Microsoft Corporation  Standard Edition (64-bit) on Windows NT 6.0 <X64> (Build 6002: Service Pack 2) 

------解决方案--------------------
没有复现lz遇到的这个错误。dbcc checktable OK的话,还真是bug哦。 
lz查查sp1 或者sp2的补丁说明里面有关于这个的没


------解决方案--------------------
执行没错,GetBytes这个哪来的?
------解决方案--------------------
是不是SSMS的问题,我这边执行都OK的。