编辑&更新数据网格视图中的记录

时间:2011-03-21 18:43:48

标签: c# asp.net sql-server-2005

我正在尝试通过转到sqldatasource属性“更新查询”并编写代码来更新datagridview中的数据,但它显示错误消息

“违反PRIMARY KEY约束'PK_contact_master'。无法在对象'dbo.admission_table'中插入重复键。 该语句已终止。 “

请告诉我在datagridview中编辑数据的确切代码并更新它..

谢谢, 丘吉尔

更新:

Sql代码:

Update admission_table 
set registration_id=@registration_id,
name_of_degree=@name_of_degree,
fees_paid=@fees_paid,
hostel=@hostel,
hostel_fees=@hostel_fees,
name_of_student=@name_of_student,
Dat­e_of_birth=@Date_of_birth,
nationality=@nationality,
gender=@gender,
address=@addres­s,
phone_no=@phone_no,
e_mail=@e_mail,
date=@date

1 个答案:

答案 0 :(得分:2)

根据您提供的SQL查询,您的问题似乎是您的更新查询中没有where子句,并且您似乎在更新中设置了主键。

这意味着您将使用相同的信息更新表中的每条记录并违反PK。

要解决这个问题,我首先要添加一个where子句。一旦您只更新了您想要的记录,您很可能会从您的set子句中删除registration_id(假设这是您的PK)。