Print Search
帖子排序:    
帖子发起人: 九维   发起时间: 2006-05-21 09:37 上午   回复: 0
jouwei 离线,最后访问时间: 2006-5-31 17:42:51 九维

发帖数前200位
注册: 2006-05-21
发 贴: 1
DateSet操作有双列约束表的问题
 2006-05-21, 09:37 上午

用代码来说要容易点吧:
表结构为
CREATE TABLE [dbo].[tInput] (
 [CardID] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,
 [CardTime] [datetime] NOT NULL ,
 [CartText] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[tInput] WITH NOCHECK ADD
 CONSTRAINT [IX_Input] UNIQUE  NONCLUSTERED
 (
  [CardID],
  [CardTime]
 )  ON [PRIMARY]
GO
然后在VS2003里用oleDbDataAdapter生成数据集后如下操作:
this.oleDbDataAdapter1.Fill(this.dataSet21);
this.dataSet21.tInput.Rows.Clear();
this.dataSet21.tInput.AddtInputRow("1",DateTime.Today,"asdf");
this.dataSet21.tInput.AddtInputRow("1",DateTime.Today.AddMinutes(1),"asdf");
this.oleDbDataAdapter1.Update(this.dataSet21);
执行出现错误:
语句已终止。\r\n违反了 UNIQUE KEY 约束 'IX_Input'。不能在对象 'tInput' 中插入重复键。
到数据库里坚持,发现这两条数据已经添加到了表中。

请问,为什么回出现这样的错误?如何避免?谢谢

IP 地址: 已记录   报告
合肥微软技术中心社区 » 技术讨论区 » .NET技术相关 » DateSet操作有双列约束表的问题

Powered by Community Server Powered by CnForums.Net