ADO NumericScale- und Precision-Eigenschaften (Beispiel) (VB)
Gilt für: Access 2013, Office 2013
In diesem Beispiel werden die Eigenschaften NumericScale und Precision verwendet, um die numerische Skalierung und Genauigkeit von Feldern in der Tabelle Rabatte der Pubs-Datenbank anzuzeigen.
'BeginNumericScaleVB
'To integrate this code
'replace the data source and initial catalog values
'in the connection string
Public Sub Main()
On Error GoTo ErrorHandler
' connection and recordset variables
Dim rstDiscounts As ADODB.Recordset
Dim Cnxn As ADODB.Connection
Dim fldTemp As ADODB.Field
Dim strCnxn As String
Dim strSQLDiscounts As String
' Open connection
Set Cnxn = New ADODB.Connection
strCnxn = "Provider='sqloledb';Data Source='MySqlServer';" & _
"Initial Catalog='Pubs';Integrated Security='SSPI';"
Cnxn.Open strCnxn
' Open recordset
Set rstDiscounts = New ADODB.Recordset
strSQLDiscounts = "Discounts"
rstDiscounts.Open strSQLDiscounts, Cnxn, adOpenStatic, adLockReadOnly, adCmdTable
' Display numeric scale and precision of
' numeric and small integer fields
For Each fldTemp In rstDiscounts.Fields
If fldTemp.Type = adNumeric Or fldTemp.Type = adSmallInt Then
MsgBox "Field: " & fldTemp.Name & vbCr & _
"Numeric scale: " & _
fldTemp.NumericScale & vbCr & _
"Precision: " & fldTemp.Precision
End If
Next fldTemp
' clean up
rstDiscounts.Close
Cnxn.Close
Set rstDiscounts = Nothing
Set Cnxn = Nothing
Exit Sub
ErrorHandler:
' clean up
If Not rstDiscounts Is Nothing Then
If rstDiscounts.State = adStateOpen Then rstDiscounts.Close
End If
Set rstDiscounts = 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
'EndNumericScaleVB