数据类型比较
Microsoft Jet 数据库引擎能识别几种交叠设置的数据类型。在 Microsoft Access 中,有四种不同的情况可能需要指定数据类型:在表
“
设计
”
视图、在
“
查询参数
”
对话框、Visual Basic 以及查询的“SQL”视图中。
下表比较五种数据类型的设置,分别对应于每一种情形。第一列列出的是在表
“
设计
”
视图中可用的 Type 属性设置和 Number 数据类型的五种 FieldSize 属性设置。第二列列出在
“
查询参数
”
对话框中设计参数查询时可用的对应查询参数数据类型。第三列列出对应的 Visual Basic 数据类型。第四列列出 DAO Field 对象数据类型。第五列列出由 Jet 数据库引擎定义的 Jet 数据库引擎 SQL 数据类型及其有效的同义词。
表字段
|
查询参数
|
Visual Basic
|
ADO
数据类型 属性常量 |
Microsoft Jet
数据库引擎的
SQL
语法和同义词
|
不支持
|
Binary
|
不支持
|
adBinary
|
BINARY
(参见注意)
(同义词: VARBINARY ) |
Yes/No
|
Yes/No
|
Boolean
|
adBoolean
|
BOOLEAN (同义词: BIT 、 LOGICAL 、 LOGICAL1 、 YESNO ) |
Number (FieldSize = Byte) |
Byte
|
Byte
|
adUnsignedTinyInt
|
BYTE ( 同义词 : INTEGER1 ) |
AutoNumber
(FieldSize=
Long Integer)
|
Long Integer
|
Long
|
adInteger
|
COUNTER ( 同义词 : AUTOINCREMENT ) |
Currency
|
Currency
|
Currency
|
adCurrency
|
CURRENCY ( 同义词 : MONEY ) |
Date/Time
|
Date/Time
|
Date
|
adDate
|
DATETIME ( 同义词 : DATE 、 TIME 、 TIMESTAMP ) |
Number (FieldSize = Double) |
Double
|
Double
|
adDouble
|
DOUBLE ( 同义词 : FLOAT 、 FLOAT8 、 IEEEDOUBLE 、 NUMBER 、 NUMERIC ) |
AutoNumber /GUID
Number
或
AutoNumber (FieldSize = Replication ID) |
Replication ID
|
不支持
|
adGUID
|
GUID
|
Number (FieldSize = Long Integer) |
Long Integer
|
Long
|
adInteger
|
LONG
(
参见注意
)
( 同义词 : INT 、 INTEGER 、 INTEGER4 ) |
OLE Object
|
OLE Object
|
String
|
adLongVarBinary
|
LONGBINARY ( 同义词 : GENERAL 、 OLEOBJECT ) |
Memo
|
Memo
|
String
|
adLongVarWChar
|
LONGTEXT ( 同义词 : LONGCHAR 、 MEMO 、 NOTE ) |
Number (FieldSize = Single) |
Single
|
Single
|
adSingle
|
SINGLE (同义词: FLOAT4 、 IEEESINGLE 、 REAL ) |
Number (FieldSize = Integer) |
Integer
|
Integer
|
adSmallInt
|
SHORT
(
参见注意
)
( 同义词 : INTEGER2 、 SMALLINT ) |
Text
|
Text
|
String
|
adVarWChar
|
TEXT ( 同义词 : ALPHANUMERIC 、 CHAR, CHARACTER 、 STRING 、 VARCHAR ) |
Hyperlink
|
Memo
|
String
|
adLongVarWChar
|
LONGTEXT ( 同义词 : LONGCHAR 、 MEMO 、 NOTE ) |
不支持
|
Value
|
Variant
|
adVariant
|
VALUE
(
参见注意
)
|
注意
·
Microsoft Access
本身不使用
BINARY
数据类型。仅为使用来自其他支持
BINARY
数据类型的数据库产品的查询或链接表而识别它。
·
Jet
数据库引擎
SQL
的
INTEGER
数据类型不对应于表字段、查询参数或
Visual Basic
的
Integer
数据类型。相反,在
SQL
中,
INTEGER
数据类型对应于表及查询参数的
Long Integer
数据类型及
Visual Basic
的
Long
数据类型。
·
VALUE
这个保留字并不代表由
Jet
数据库引擎定义的数据类型。然而,在
Microsoft Access
或
SQL
查询中,
VALUE
这个保留字可视为一个
Visual Basic Variant
数据类型的有效同义词。
·
如果正在为
Visual Basic
代码中的
DAO 对象
设置数据类型,必须设置该对象的
Type
属性。