2

请注意,目前我正在尝试通过 C# ADO.NET 执行以下 INSERT 命令,但收到上述错误:

INSERT INTO tblStampAnnotation ([StampAnnotationID],[Title],[Subject],[Content],[Author],[Date],[LinkedDocumentsID],[PageNumber],[Colour]) VALUES('{6b15a625-b967-4d3b-9ee3-34f64633f469}','test title','test subject','test content','test author',GETDATE(),'{475f30a1-142f-4fd5-b783-598d838559de}',1,Null)

在这里找到一个小程序来检查 GUID 是否正确:http: //www.devx.com/vb2themax/Tip/18293

当我运行程序时,它表明 {6b15a625-b967-4d3b-9ee3-34f64633f469} 和 {475f30a1-142f-4fd5-b783-598d838559de} 都是 GUID。有没有人有任何建议来确定我收到此错误的原因?TIA。

更新:

谢谢你的建议,鲍勃;但是,当我使用以下命令时,我仍然得到同样的错误:

INSERT INTO tblStampAnnotation ([StampAnnotationID],[Title],[Subject],[Content],[Author],[Date],[LinkedDocumentsID],[PageNumber],[Colour]) VALUES('6b15a625-b967-4d3b-9ee3-34f64633f469','test title','test subject','test content','test author',GETDATE(),'475f30a1-142f-4fd5-b783-598d838559de',1,Null)

更新 2:请注意,我使用的是 SQL Server 2008。

更新3:这越来越奇怪了。当我使用 NEWID() 时,我仍然收到同样的错误:

INSERT INTO tblStampAnnotation ([StampAnnotationID],[Title],[Subject],[Content],[Author],[Date],[LinkedDocumentsID],[PageNumber],[Colour]) VALUES(NEWID(),'test title','test subject','test content','test author',GETDATE(),NEWID(),1,Null)
4

2 回答 2

5

您应该从 GUID 值中删除大括号 {}。

'6b15a625-b967-4d3b-9ee3-34f64633f469'
于 2013-02-27T00:33:07.200 回答
3

事实证明,我已经使用右键单击数据库 -> 任务... -> 导入数据从另一个数据库复制了这个表,然后我得到了 uniqueidentifier 错误。为了解决这个问题,我删除了表,并使用“New Table ...”设计器重新创建它,在我尝试了相同的第一个 INSERT 命令后它工作正常,所以当我使用 import 复制它时发生了一些奇怪的事情. 谢谢大家的建议。

于 2013-02-27T19:12:55.010 回答