使用下面的方法获取表的列名:
Dim cat As New ADOX.Catalog
Set cat.ActiveConnection = cnn
Dim i As Integer
lvwData.ColumnHeaders.Clear
For i = 0 To cat.Tables(Tables).Columns.Count - 1
lvwData.ColumnHeaders.Add , , cat.Tables(Tables).Columns.Item(i).Name
Next i但是得到的列时按字母顺序排列的,顺序不是建立这个表时候的顺序了,有什么办法可以获得与原表一致的列名呢?
Dim cat As New ADOX.Catalog
Set cat.ActiveConnection = cnn
Dim i As Integer
lvwData.ColumnHeaders.Clear
For i = 0 To cat.Tables(Tables).Columns.Count - 1
lvwData.ColumnHeaders.Add , , cat.Tables(Tables).Columns.Item(i).Name
Next i但是得到的列时按字母顺序排列的,顺序不是建立这个表时候的顺序了,有什么办法可以获得与原表一致的列名呢?
Dim i As Integer
Dim rs As New ADODB.Recordset
我使用的是adodbDim sql As String
Dim s As String
Cnns.CursorLocation = adUseClient
Cnns.Open "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=hzyl(new);Data Source=ukyo"
sql = "select * from jsmx"
rs.Open sql, Cnns, adOpenForwardOnly, adLockReadOnly
For i = 0 To rs.Fields.Count - 1
s = rs.Fields(i).Name
Next