在 PowerShell 中,如何訪問 DAO 列舉常量,例如 RecordsetTypeEnum dbOpenTable (1) 或 DataTypeEnum adVarNumeric (139)?現在,我只是將它們作為幻數放入,但參考正確的常量會更清晰、更容易閱讀。
uj5u.com熱心網友回復:
您可以enum使用所需的名稱定義自定義型別:
enum DAODataType {
adBigInt = 0x14
adBinary = 0x80
adBoolean = 0x0B
adBSTR = 0x08
adChapter = 0x88
adChar = 0x81
adCurrency = 0x06
adDate = 0x07
adDBDate = 0x85
adDBTime = 0x86
adDBTimeStamp = 0x87
adDecimal = 0x0E
adDouble = 0x05
adEmpty = 0x00
adError = 0x0A
adFileTime = 0x40
adGUID = 0x48
adIDispatch = 0x09
adInteger = 0x03
adIUnknown = 0x0D
adLongVarBinary = 0xCD
adLongVarChar = 0xC9
adLongVarWChar = 0xCB
adNumeric = 0x83
adPropVariant = 0x8A
adSingle = 0x04
adSmallInt = 0x02
adTinyInt = 0x10
adUnsignedBigInt = 0x15
adUnsignedInt = 0x13
adUnsignedSmallInt = 0x12
adUnsignedTinyInt = 0x11
adUserDefined = 0x84
adVarBinary = 0xCC
adVarChar = 0xC8
adVariant = 0x0C
adVarNumeric = 0x8B
adVarWChar = 0xCA
adWChar = 0x82
}
然后通過[DAODataType]::adVarNumeric而不是139
uj5u.com熱心網友回復:
對于 RecordsetTypeEnum dbOpenTable(來自 Access),您可以使用:
[Reflection.Assembly]::LoadWithPartialName("Microsoft.Office.Interop.Access.Dao") | Out-null
[int][Microsoft.Office.Interop.Access.Dao.RecordsetTypeEnum]::dbOpenTable
對于 DataTypeEnum adVarNumeric(來自 ADODB,而不是 Access),您可以使用:
[Reflection.Assembly]::LoadWithPartialName("ADODB") | Out-null
[int][ADODB.DataTypeEnum]::adVarNumeric
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/405518.html
標籤:
