用OLEDB,枚举服务器、数据库、表名,得到了表名其他还不是小菜
我做过这个,实现的非常好,不过是VC的,VB应该也差不多
我做过这个,实现的非常好,不过是VC的,VB应该也差不多
解决方案 »
- 如何判断四则运算中,是否有无效运算符?
- 新手问题多哈,麻烦大家了帮我看看
- 窗体的Tag属性问题
- 请问一下!当我浏览dudu.com时候,就会自动下载并且安装一个dudu下载加速器?并且没有数字签名安全警告!他这个是怎么做到的?
- 求助有关控件的使用! 比如 ListView TreeView ImageCombo
- 在线急问:为什么在win2000server+sql server的机器上安装VB6不成功?
- Public gintSmode As Integer 为什么提示用户类型未定义
- datacombo控件,如何去除重复的子段?
- 求实现RSA加密解密的VB代码!
- 关于数据库的共享
- 各位大侠,请问如何用程序使access数据库及其副本同步,本人第一次提问,请大侠们不要冷落,拜托了!
- VB.net 发行正式版了吗?
列举表名
Dim adoConnectionX As New ADODB.Connection
Dim adoSchemaRecordsetX As New ADODB.Recordset
'Ms SQL 7:
'adoConnectionX.Open "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Data Source=yuer;DataBase=NorthwindCS"
'Access 2000:
adoConnectionX.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\DRptPlus\DRptPlus\Data\NWind2K.mdb;Persist Security Info=False"
Set adoSchemaRecordsetX = adoConnectionX.OpenSchema(adSchemaTables)
Do until adoSchemaRecordsetX.EOF
Debug.Print "Table name: " & _
adoSchemaRecordsetX !TABLE_NAME & vbCr & _
"Table type: " & adoSchemaRecordsetX!TABLE_TYPE & vbCr
adoSchemaRecordsetX.movenext
Loop
方 法 2(引 用 Microsoft ADO Extensions 2.1 for DDL and Security (ADOX)):
( 需 要 升 级 至 VB 6.0 SP3+)
Dim adoConnectionX As New ADODB.Connection
'Ms SQL 7:
adoConnectionX.Open "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Data Source=yuer;DataBase=NorthwindCS"
'Access 2000:
'adoConnectionX.Open "Provider=Microsoft.Jet.OLEDB.3.51;Data Source=E:\DRptPlus\DRptPlus\Data\NWind2K.mdb;Persist Security Info=False"
Dim adoxCatalogX As New ADOX.Catalog
Set adoxCatalogX.ActiveConnection = adoConnectionX
Dim adoxTableX As ADOX.Table
For Each adoxTableX In adoxCatalogX.Tables
debug.print adoxTableX.name
Next
----------------------------------------------------------------------
列举字段
Dim adoConnectionX As New ADODB.Connection
'Ms SQL 7:
'adoConnectionX.Open "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Data Source=yuer;DataBase=Northwind"
'Access 2000:
adoConnectionX.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\NWind2K.mdb;Persist Security Info=False"
Dim adoxCatalogX As New ADOX.Catalog
Set adoxCatalogX.ActiveConnection = adoConnectionX
Dim i As Integer
Dim j As Integer
For i = 0 To adoxCatalogX.Tables.Count - 1
If adoxCatalogX.Tables.Item(i).Type = "TABLE" Then
Debug.Print "[" & adoxCatalogX.Tables.Item(i).Name & "] Contains " & adoxCatalogX.Tables.Item(i).Columns.Count & " Fields!"
For j = 0 To adoxCatalogX.Tables.Item(i).Columns.Count - 1
Debug.Print "[" & adoxCatalogX.Tables.Item(i).Name & "].[" & adoxCatalogX.Tables.Item(i).Columns.Item(j).Name & "]"
Next j
End If
Next i
看看http://www.csdn.net/expert/topic/40/40091.shtm
引用 Microsoft SQLDMO object libary
Dim SQLServerX As New SQLDMO.SQLServer
SQLServerX.Connect "sServerName", "sa",""
Dim i As Integer
For i = 0 To SQLServerX.Databases.Count - 1
Debug.Print SQLServerX.Databases.Item(i + 1).Name
Debug.Print SQLServerX.Databases.Item(i + 1).PrimaryFilePath
Next i
Dim SQLServerX As New SQLOLE.SQLServer
SQLServerX.Connect "sServerName", "sa","password"
在SQLServerX.DataBases集合中,数据库名,表名,字段名和类型大小等信息都有