【问题标题】:Error while deleting record from database从数据库中删除记录时出错
【发布时间】:2013-12-16 13:24:06
【问题描述】:

我需要一些关于从数据库中删除记录的帮助。

我正在尝试从我的 SQL Server 数据库中的表中删除一条记录。

我错过了什么吗?

  Private Sub cmdDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdDelete.Click
     _DataSet.Tables(0).Rows(CInt(txtCurrent.Text) - 1).Delete()
     ' tho, it can remove the deleted rows
     ' we cannot call the DataSet.AcceptChanges method
     ' because the DataAdapter would not recognize the delete row
     ' by the time DataAdapter.Update(DataSet) is called.
     EnableNavigation()
     cmdSave.Enabled = True  ' let user update the underlying database
     ' after deleting the current record, the current record still points to the
     ' deleted record (though it cannot be updated). 
     ' The user must MoveNext/Back to view other records.
 End Sub

【问题讨论】:

    标签: sql sql-server vb.net delete-record


    【解决方案1】:

    DataRow.Delete 不会从数据库中删除该行。它将DataRowRowState 标记为deleted。如果您致电Update,这将通过DataAdapter 进行检查。如果它的状态是Deleted,它将根据您必须提供的DeleteCommand 查找它。

    所以你需要为你的DataAdapter 提供一个DeleteCommand,这是从数据库中删除行的sql。

    【讨论】:

      【解决方案2】:

      你想删除它

      _DataSet.Tables(0).Rows(CInt(txtCurrent.Text) - 1).Delete()
      
       Dim adapter As New SqlDataAdapter
       Dim cmdBuilder As New SqlCommandBuilder(adapter)
       Dim DutyDetails As String = "SELECT * from MyTable"
      
       adapter.SelectCommand = New SqlCommand(DutyDetails, SQLConn)
       adapter.UpdateCommand = cmdBuilder.GetUpdateCommand
       adapter.DeleteCommand = cmdBuilder.GetDeleteCommand
      
       Dim cb As SqlCommandBuilder = New SqlCommandBuilder(adapter)
      
        adapter.Update(_DataSet.Tables("0"))
      

      来源:Deleting a record from dataset and sql server

      【讨论】:

      • 我有这个错误:删除表上的记录时出错...值不能为空。参数名称:数据表
      【解决方案3】:

      您将表格称为_DataSet.Tables(0),然后将其称为_DataSet.Tables("0") 我敢打赌两者之一是不正确的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-01-26
        • 1970-01-01
        • 1970-01-01
        • 2017-03-21
        • 2021-04-03
        • 2019-12-24
        • 2023-04-01
        相关资源
        最近更新 更多