首页 文章

从数据库中删除行c#

提问于
浏览
0

为什么这段代码不起作用?

(this.namesBindingSource.Current as DataRowView).Delete();         
        this.namesTableAdapter.Update(database1DataSet1);

错误:在传递带有已删除行的DataRow集合时,更新需要有效的DeleteCommand .

数据库是添加到项目的基于服务的数据库,只有一个表显示在dataGridView中,此代码链接到按钮 . 你将点击行删除然后按下按钮并得到错误....

怎么了?我疯了......

2 回答

  • 0

    错误消息是不言自明的 . namesTableAdapter 需要有效的 DeleteCommand . 否则,它不知道您删除"deleted"行 . UpdateInsert-Commands 也是如此 .

    Delete() 只需更改RowState . 如果您使用 DataAdapter (或 TableAdapter ),则需要知道如果状态为 DeletedModified 该怎么办 .

    How to: Create TableAdapter Queries

  • 2

    使用 CommandBuilder 但请记住,您需要使用带有键列的表 .

相关问题