ADO 菜问……

SetMeFree 2004-10-27 06:23:01
有一个未知 Jet 数据库,但确定是数据库,如何用 VB 的ADO 获取其包含的表的数量和表名?对于其他数据库是不是一样的方法?
我苦思未解,或者 ADO 不支持此法?
类似于 Data View,只要设置 ConnectionString,再执行 Open,即可获取Table的目录树。
...全文
161 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
lyxhappy 2004-11-03
  • 打赏
  • 举报
回复
UP
yongming520 2004-11-03
  • 打赏
  • 举报
回复
建议楼主去http://access911.net看看,那里有你想要的东西,给你一个QQ号码,3103919,你可以问他们!
officecn 2004-10-28
  • 打赏
  • 举报
回复
使用ADOX来查询数据库结构,如果你事先并不知道是什么数据库,
那你可以写一个连接数据库的界面,
连接类型分两种:Access,其他类型的数据库都放在ODBC连接类型里
这样你的连接字符串不就确定了?
leigang358 2004-10-28
  • 打赏
  • 举报
回复
被daisy8675(莫依)给抢先了
55555
SetMeFree 2004-10-28
  • 打赏
  • 举报
回复
还有,要用纯ADO的方式。
SetMeFree 2004-10-28
  • 打赏
  • 举报
回复
各位朋友的热心帮助让小弟我感激不尽……
daisy8675(莫依)的那个方法我试过,rstSchema!TABLE_NAME返回字符串"MSysAccessObjects",并不是我要的表的名字。而rstSchema!TABLE_TYPE是可以返回"Access_Table"样的字串。而且这个Loop好久都没停下来,那个out字串变量里存了好多好多东西。我用来验证的数据库只有2个表啊。
也许有些朋友还未明白我的意图,小弟再说明一下:
有一个Access数据库(.mdb),里面有两个表,一个名为"学生档案",另一个是"教师档案"。而现在我并不知道这个数据库里面有多少个表,更不知道表的名字。用Data View或者Data Environment都可以很简单地看到。我想做的并不是借助其他工具来看,我要用代码的方式把表的名字列出来!
关键:不知道有多少个表更不知道表的名字!要用代码!
为这个,进程已经拖了几天了,55555……
chenyu5188 2004-10-28
  • 打赏
  • 举报
回复
out还用问嘛当然是字符型的啊!
chenyu5188 2004-10-28
  • 打赏
  • 举报
回复
rstSchema as new adodb.recordset

我帮她帮齐!
SetMeFree 2004-10-28
  • 打赏
  • 举报
回复
daisy8675(莫依):
原犸第三行:strSchema 何解?
out = out &.....out 是什么类型的?
sloven 2004-10-27
  • 打赏
  • 举报
回复
看看也长经验~~呵呵
daisy8675 2004-10-27
  • 打赏
  • 举报
回复
Private Sub Form_Load()
Dim adoCN As New ADODB.Connection '定义数据库的连接存放数据和代码Dim rstSchema
Dim strCnn As New ADODB.Recordset
Dim strConn As String

strConn = " Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=pubs;Data Source=JOHN"
adoCN.Open strConn

Set rstSchema = adoCN.OpenSchema(adSchemaTables)

Do Until rstSchema.EOF
out = out & "Table name: " & _
rstSchema!TABLE_NAME & vbCr & _
"Table type: " & rstSchema!TABLE_TYPE & vbCr
rstSchema.MoveNext
Loop
rstSchema.Close

adoCN.Close
Debug.Print out
End Sub


有哥 2004-10-27
  • 打赏
  • 举报
回复
如果是access数据库可以打开系统表看看,visdata中让它们显示出来,你就清楚了
有哥 2004-10-27
  • 打赏
  • 举报
回复
如何是access数据库可以打开系统表看看
victorycyz 2004-10-27
  • 打赏
  • 举报
回复

用ADOX可以得到。

不过,连接的字符串肯定是不通用的,如果不知道是什么数据库,恐怕很难连接上。

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧