Count 屬性範例 (VB)
此範例示範 Count 屬性,其中包含 Employee 資料庫中的兩個集合。 屬性會取得每個集合中的物件數目,並設定列舉這些集合的迴圈上限。 在沒有使用 Count 屬性的情況下列舉這些集合的另一種方式是使用 For Each...Next
陳述式。
'BeginCountVB
'To integrate this code
'replace the data source and initial catalog values
'in the connection string
Public Sub Main()
On Error GoTo ErrorHandler
' recordset and connection variables
Dim rstEmployees As ADODB.Recordset
Dim Cnxn As ADODB.Connection
Dim strSQLEmployees As String
Dim strCnxn As String
Dim intLoop As Integer
' Open a connection
Set Cnxn = New ADODB.Connection
strCnxn = "Provider='sqloledb';Data Source='MySqlServer';" & _
"Initial Catalog='Northwind';Integrated Security='SSPI';"
Cnxn.Open strCnxn
' Open recordset with data from Employee table
Set rstEmployees = New ADODB.Recordset
strSQLEmployees = "Employee"
'rstEmployees.Open strSQLEmployee, Cnxn, , , adCmdTable
rstEmployees.Open strSQLEmployees, Cnxn, adOpenForwardOnly, adLockReadOnly, adCmdTable
'the above two lines opening the recordset are identical as
'the default values for CursorType and LockType arguments match those specified
' Print information about Fields collection
Debug.Print rstEmployees.Fields.Count & " Fields in Employee"
For intLoop = 0 To rstEmployees.Fields.Count - 1
Debug.Print " " & rstEmployees.Fields(intLoop).Name
Next intLoop
' Print information about Properties collection
Debug.Print rstEmployees.Properties.Count & " Properties in Employee"
For intLoop = 0 To rstEmployees.Properties.Count - 1
Debug.Print " " & rstEmployees.Properties(intLoop).Name
Next intLoop
' clean up
rstEmployees.Close
Cnxn.Close
Set rstEmployees = Nothing
Set Cnxn = Nothing
Exit Sub
ErrorHandler:
' clean up
If Not rstEmployees Is Nothing Then
If rstEmployees.State = adStateOpen Then rstEmployees.Close
End If
Set rstEmployees = Nothing
If Not Cnxn Is Nothing Then
If Cnxn.State = adStateOpen Then Cnxn.Close
End If
Set Cnxn = Nothing
If Err <> 0 Then
MsgBox Err.Source & "-->" & Err.Description, , "Error"
End If
End Sub
'EndCountVB