選項比較二進位制文字資料庫
選項比較二進位制
二進位制比較使得對模組/類內的字串相等性的所有檢查都區分大小寫。從技術上講,使用此選項,使用每個字元的二進位制表示的排序順序執行字串比較。
A <B <E <Z <a <b <e <z
如果模組中未指定選項比較,則預設使用二進位制。
Option Compare Binary
Sub CompareBinary()
Dim foo As String
Dim bar As String
'// Case sensitive
foo = "abc"
bar = "ABC"
Debug.Print (foo = bar) '// Prints "False"
'// Still differentiates accented characters
foo = "ábc"
bar = "abc"
Debug.Print (foo = bar) '// Prints "False"
'// "b" (Chr 98) is greater than "a" (Chr 97)
foo = "a"
bar = "b"
Debug.Print (bar > foo) '// Prints "True"
'// "b" (Chr 98) is NOT greater than "á" (Chr 225)
foo = "á"
bar = "b"
Debug.Print (bar > foo) '// Prints "False"
End Sub
選項比較文字
選項比較文字使模組/類中的所有字串比較使用不區分大小寫的比較。
(A | a)<(B | b)<(Z | z)
Option Compare Text
Sub CompareText()
Dim foo As String
Dim bar As String
'// Case insensitivity
foo = "abc"
bar = "ABC"
Debug.Print (foo = bar) '// Prints "True"
'// Still differentiates accented characters
foo = "ábc"
bar = "abc"
Debug.Print (foo = bar) '// Prints "False"
'// "b" still comes after "a" or "á"
foo = "á"
bar = "b"
Debug.Print (bar > foo) '// Prints "True"
End Sub
選項比較資料庫
選項比較資料庫僅在 MS Access 中可用。它將模組/類設定為使用當前資料庫設定來確定是使用文字還是二進位制模式。
注意:不建議使用此設定,除非該模組用於編寫自定義 Access UDF(使用者定義的函式),它應該以與該資料庫中的 SQL 查詢相同的方式處理文字比較。