Dim con As New Connection Dim rs As New Recordset Dim adore As New ADODB.Recordset Dim i As Long Private Sub Form_Load() con.CursorLocation = adUseServer con.Open "provider =sqloledb;data source =z007;user id = sa;initial catalog =master" Set rs = con.OpenSchema(adSchemaTables)这是我用过的.要学习就按楼上说的做.如果找不到告诉我,我给你发一个.
可以;建立odbc数据源,然后创建工程,加入ado 应用,如果你对连结字符串不清楚,可以在窗体上加一个ado控件,然后设置这个控件的属性,测试连结成功后,把连接字符串拷贝到程序里用。 接着开始定义ado对象 dim m_cnnCom as new adodb.connection dim m_cmdCom as new adodb.Command dim rst as new adodb.recorder 建立连结 m_cnnCom.Connectionstring="...."''连接字符串 m_cnnCom.open ''''''具体的过程如上,下面是一段读取数据库中表名的例子,主要是OpenSchema方法 sTable = UCase(sValue) bFound = False Set rsSchema = m_CON.OpenSchema(adSchemaTables, Array(Empty, Empty, Empty, "TABLE")) If Not rsSchema Is Nothing Then Do While Not rsSchema.EOF If UCase(rsSchema!Table_name) = sTable Then bFound = True Exit Do End If rsSchema.MoveNext Loop End If rsSchema.Close Set rsSchema = Nothing If bFound = True Then sTable = "表:" & sValue & "已经存在." SetSataueCap (sTable) sTable = sTable & "要修改吗?" If MsgBox(sTable, vbYesNo) = vbNo Then Exit Sub End If
用OpenSchema可以完成你所想的,不同的对象,用不同的参数,上面是读表名称,读字段名称可以像下面的: Set rsSchema = m_CON.OpenSchema(adSchemaColumns, Array(Empty, Empty, Empty, "COLUMN")) 记不清这些参数名称,大概是第一个参数指定要读取的对象类型(如表、字段),第二个参数用来存放传进去的值,用的是一个数组,每一个对象对应的数组的项个数不同,含义也不同,如果你想读表TT的字段名,可能像下面的: Set rsSchema = m_CON.OpenSchema(adSchemaColumns, Array(Empty, Empty, “TT”, "COLUMN")),具体怎么对应,得看ADO的HELP
Dim rs As New Recordset
Dim adore As New ADODB.Recordset
Dim i As Long
Private Sub Form_Load()
con.CursorLocation = adUseServer
con.Open "provider =sqloledb;data source =z007;user id = sa;initial catalog =master"
Set rs = con.OpenSchema(adSchemaTables)这是我用过的.要学习就按楼上说的做.如果找不到告诉我,我给你发一个.
接着开始定义ado对象
dim m_cnnCom as new adodb.connection
dim m_cmdCom as new adodb.Command
dim rst as new adodb.recorder
建立连结
m_cnnCom.Connectionstring="...."''连接字符串
m_cnnCom.open
''''''具体的过程如上,下面是一段读取数据库中表名的例子,主要是OpenSchema方法
sTable = UCase(sValue)
bFound = False
Set rsSchema = m_CON.OpenSchema(adSchemaTables, Array(Empty, Empty, Empty, "TABLE"))
If Not rsSchema Is Nothing Then
Do While Not rsSchema.EOF
If UCase(rsSchema!Table_name) = sTable Then
bFound = True
Exit Do
End If
rsSchema.MoveNext
Loop
End If
rsSchema.Close
Set rsSchema = Nothing
If bFound = True Then
sTable = "表:" & sValue & "已经存在."
SetSataueCap (sTable)
sTable = sTable & "要修改吗?"
If MsgBox(sTable, vbYesNo) = vbNo Then Exit Sub
End If
Set rsSchema = m_CON.OpenSchema(adSchemaColumns, Array(Empty, Empty, Empty, "COLUMN"))
记不清这些参数名称,大概是第一个参数指定要读取的对象类型(如表、字段),第二个参数用来存放传进去的值,用的是一个数组,每一个对象对应的数组的项个数不同,含义也不同,如果你想读表TT的字段名,可能像下面的:
Set rsSchema = m_CON.OpenSchema(adSchemaColumns, Array(Empty, Empty, “TT”, "COLUMN")),具体怎么对应,得看ADO的HELP
通过ado 可以直接建库,可以建access的库,
那么能不能直接建dbf呢?
怎么建,可以的化具体写法如何?
有源码的话最好,谢谢,
你的意思先要通过odbc建库,再用ado访问吗?
我说的是直接用ado 建dbf文件