因为Access将用户表的信息存放在了MSysObjects系统表内,因此,从MSysObjects表查询2开头的用户表名称的Select语句可以写为:
select name from MSysObjects where type=1 and flags=0 and name like ’2%’
具体的VB代码如下:
Private Sub Command1_Click()
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim str As String
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset str = "select name from MSysObjects where type=1 and flags=0 and name like ’2%’" cn.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=c:\csdn\db1.mdb;User ID=Admin;Password=;" rs.Open str, cn, adOpenKeyset, adLockReadOnly While Not rs.EOF cn.Execute "drop table [" & rs(0) & "]" rs.MoveNext Wend MsgBox ("删除以2开头的数据表成功!")
rs.Close cn.Close Set rs = Nothing
Set cn = Nothing End Sub Private Sub Command1_Click()
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim str As String
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
str = "select name from MSysObjects where type=1 and flags=0 and name like ’2%’"
cn.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=c:\csdn\db1.mdb;User ID=Admin;Password=;"
rs.Open str, cn, adOpenKeyset, adLockReadOnly
While Not rs.EOF
cn.Execute "drop table [" & rs(0) & "]"
rs.MoveNext
Wend
MsgBox ("删除以2开头的数据表成功!")
rs.Close
cn.Close
Set rs = Nothing
Set cn = Nothing
End Sub
运行后出现不能读取记录;在 ’msysobjects’ 上没有读取数据权限的问题,怎么办啊?
解决步骤如下:
1. 打开Access
2. 选择“工具”|“选项” 命令。
3. 在“视图”选项卡内,选择“系统对象”复选框,并单击“OK”按钮。
4. 选择“工具”|“安全”|“用户与组的权限” 命令
5. “权限”选项卡中,在“用户名/组名”列表框中选择“管理员”。
6. 在“对象名称”列表框中选择’MSysObjects’,并在下面“权限”栏中 选择“读取数据” 复选框。
7. 单击“确定”按钮。
经过上面的操作,上面的程序便会正常运行!
本文来自 280文秘网(https://www.it280.com),转载请保留网址和出处
【VB程序实现删除Access的多个表】相关文章:
哄孩子睡觉的童话故事大全02-06
小学生日记:我养成了坚持写日记的好习惯02-06
四六级作文:一个星期一篇作文训练(2)02-06
我梦想中的房子高考英语作文02-06
2023年内蒙古包头中考总分多少,各科都是多少分?02-06
上网利与弊的短文,300字左右_500字02-06
小学必会的Be动词的用法语法知识02-06
高考英语词汇: one another与one after another的区别02-06
中级人力资源专业知识与实务练习题(7)02-06
游记的作文02-06
胜似亲人的作文300字02-06
以错误为话题的作文02-06
