问题描述
所有东西已初始化~就是删除以后,ACCESS数据库内没有删除IfkhmcListBox.SelectedItem=""ThenMsgBox("请选择某一客户~")ElseTryDimdrAsDialogResultdr=MsgBox("请确认是否删除"&khmcListBox.SelectedItem&"客户的所有资料?",MsgBoxStyle.YesNo,"信息框")Ifdr=Windows.Forms.DialogResult.YesThenMyConnection.Open()MyCommand=NewOleDbCommand("DELETEFROMinfoWHEREcompany='"&khmcListBox.SelectedItem&"'",MyConnection)MyCommand.ExecuteNonQuery()MsgBox("删除成功",,"信息框")MyConnection.Close()MyReader.Close()MyCommand.Dispose()ElseExitSubEndIfCatchcAsExceptionMsgBox(c.ToString)EndTryEndIf为什呢我的程序没有问题,CATCH也没有出现问题,那就说明我删除成功了,但是数据库里面还是没有删除~请问是什么问题啊?
解决方案
解决方案二:
来个大虾啊~
解决方案三:
ExecuteNonQuery的返回值是多少,如果是0的话说明没有符合条件的纪录。查看一下你拼接的SQL语句。
解决方案四:
刚看了下确实ExecuteNonQuery返回的是0~我在去看看谢谢啊~
解决方案五:
khmcListBox.SelectedItem但是我这项里面确实有值,而且是从数据库内读出来的~所以和数据库内的一项是相同的,怎么没有复合条件的记录呢~
解决方案六:
刚又弄了下,删除以后再查询那刚才那删除的那项确实没有了,但是数据库内还保留着改项的值~
解决方案七:
mdb文件多大了?压缩和修复一下。
解决方案八:
都不到一1MB~
解决方案九:
先把你的MyCommand的SQL语句在Access里执行一下,看看能否操作成功,确认SQL语句没有问题了再找其他原因。按说只要SQL语句正确,应该是没有问题的。
解决方案十:
语句应该是正确的,在调试的过程中,确实将选中的项目删除了,再次查询就找不到那项了,但是在数据库中还存在~
解决方案十一:
有没有用到事务?