| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3579 人关注过本帖
标题:vb怎么用mshflexgrid实时删除、清空数据库
取消只看楼主 加入收藏
凛冬1
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2020-3-14
结帖率:81.82%
收藏
已结贴  问题点数:20 回复次数:4 
vb怎么用mshflexgrid实时删除、清空数据库
请教各位大神们,我这个为什么总是删除不了数据库的内容,只是把当前mshflexgrid表格上的数据删了,下次再查询的时候原来删除的内容依旧还在?我用了rs.Update    MSHFlexGrid1.Refresh都没有反应,要么就是报错对象关闭时不允许操作。
还有清空的话清空不了mshflexgrid表格,只有下次再打开这个表格或者再次查询的时候才显示把表格清空了??

Private Sub Command2_Click()
'连接数据库
If conn.State = 0 Then
   conn.ConnectionString = "Provider=Microsoft.jet.OLEDB.4.0;Data Source=" & _
 App.Path & "\设计计算.mdb;Persist Security Info=False"   '连接数据库的驱动字符串并打开数据库
   conn.Open
End If

'删除
Dim sql As String
Set rs = New ADODB.Recordset     

Set rs.ActiveConnection = conn
sql = "delete from [设计计算] where  [管段编号]=' " & MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 0) & " ' "   
conn.Execute sql  
MSHFlexGrid1.RemoveItem MSHFlexGrid1.Row
rs.Open sql, conn, adOpenKeyset, adLockBatchOptimistic

Dim i%
For i = 1 To MSHFlexGrid1.rows - 1
 MSHFlexGrid1.TextMatrix(i, 0) = i
Next
conn.Close  
Set conn = Nothing   
End Sub

'清空
Private Sub Command12_Click()
Dim sql$
If conn.State = 0 Then
   conn.ConnectionString = "Provider=Microsoft.jet.OLEDB.4.0;Data Source=" & _
 App.Path & "\设计计算.mdb;Persist Security Info=False"   '连接数据库的驱动字符串并打开数据库
   conn.Open
End If

sql = " Delete  from [设计计算] "
 conn.Execute sql
 MsgBox "已清空"
 conn.Close
End Sub
搜索更多相关主题的帖子: sql conn 删除 清空 数据库 
2020-03-25 21:41
凛冬1
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2020-3-14
收藏
得分:0 
[]是因为那是字段名称,不加[]容易识别错误。空格没有影响吧?
2020-03-26 11:04
凛冬1
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2020-3-14
收藏
得分:0 
回复 5楼 ZHRXJR
我运行完了打开数据库依旧没有删除。如果直接点击mshflexgrid就删除的话万一用户不小心点到了某一行怎么办
2020-03-27 15:28
凛冬1
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2020-3-14
收藏
得分:0 
我是运行完了才打开mdb的,mdb真的没有变化,只是mshflexgrid上数据删掉了
2020-03-27 21:30
凛冬1
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2020-3-14
收藏
得分:0 
程序代码:
Private Sub MShFlexGrid1_Click()
'删除
Dim i As String
Call KKK(conn)
sql = "delete from [设计计算] where  [管段编号]='" & MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 2) & "'"
conn.Execute sql
conn.Close
Set conn = Nothing
MsgBox "删除成功!"
End Sub

Sub KKK(conn)
conn.ConnectionString = "Provider=Microsoft.jet.OLEDB.4.0;Data Source=" & App.Path & "\设计计算.mdb;Persist Security Info=False"
conn.Open
End Sub


mdb一直没有动静,因为我只是要删一行,所以把你那个Unload Me    删除清空数据库.Show   这段代码删了,界面上mshflexgrid也没有反应,但是会弹出“删除成功!”
2020-03-28 17:06
快速回复:vb怎么用mshflexgrid实时删除、清空数据库
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015097 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved