• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Delphi与各数据库数据类型比较

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

Delphi数据类型与各数据库数据类型对比如下表,如有具体说明见表中脚注:

Delphi Type

Oracle Types

SQL Server Types

MySQL Types [1]

InterBase Types

PostgreSQL Types

SQLite Types

ftSmallint

NUMBER(p, 0)[2] 
(p < 5)

SMALLINT

TINYINT(M) (M > 1)
SMALLINT

SMALLINT

SMALLINT

TINYINT
SMALLINT

ftWord

-

TINYINT

TINYINT(M) UNSIGNED (M > 1)
SMALLINT UNSIGNED
YEAR

-

-

-

ftInteger

NUMBER(p, 0)[2]
(4 < p < 10)

INT

MEDIUMINT
MEDIUMINT UNSIGNED
INT

INTEGER

INTEGER

INTEGER
INT

ftLargeint

NUMBER(p, 0)[2] 
(9 < p < 19)

BIGINT

BIT 
INT UNSIGNED
BIGINT
BIGINT UNSIGNED

BIGINT

BIGINT

BIGINT

ftFloat

NUMBER(p, s)[2] 
BINARY FLOAT(FLOAT)
BINARY DOUBLE

DECIMAL(p, s)[3] 
FLOAT
REAL

DECIMAL(p, s)[3] 
FLOAT
DOUBLE

NUMBER(p, s)[3] 
FLOAT
DOUBLE PRECISION

DECIMAL[3] 
REAL
DOUBLE PRECISION

DECIMAL(p, s)[3]
FLOAT
DOUBLE PRECISION

ftBCD

NUMBER(p, s)[2] 
(p < 15) and (s < 5)

DECIMAL(p, s)[3] 
(p < 15) and (s < 5)

DECIMAL(p, s)[3] 
(p < 15) and (s < 5)

DECIMAL(p, s)[3] 
(p < 15) and (s < 5)

DECIMAL[3]

DECIMAL[3]

ftFMTBcd

NUMBER(p, s)[2] 
(14 < p < 39) and> 
(4 < s < 39)

DECIMAL(p, s) 
(14 < p < 39) and 
(4 < s < 39)

DECIMAL(p, s)[3] 
(14 < p < 39) and
(4 < s < 39)

DECIMAL(p, s)[3] 
(14 < p < 19) and
(4 < s < 19)

DECIMAL[3]

DECIMAL[3]

ftCurrency

-

MONEY
SMALLMONEY

-

-

MONEY

MONEY

 

ftBoolean

-

BIT

TINYINT[4] 
BOOL[4] 
BOOLEAN[4]

BOOLEAN

BOOLEAN

BOOLEAN

 

ftString

VARCHAR2
NVARCHAR2
VARCHAR
CHAR
NCHAR
RAW[5] 
INTERVAL DAY TO SECOND
INTERVAL DAY TO MONTH
ROWID
UROWID

CHAR
VARCHAR

CHAR
VARCHAR
ENUM
SET
BINARY[6] 
VARBINARY[6]

CHAR
VARCHAR

CHAR
VARCHAR

CHAR
VARCHAR

ftWideString

See note [7]

NCHAR
NVARCHAR

See note [7]

See note [7]

See note [7]

See note [7]

ftMemo

LONG
Also see note [8]

TEXT
NTEXT[9]

TINYTEXT
TEXT
MEDIUMTEXT
LONGTEXT

BLOB TEXT

TEXT

TEXT
CLOB

ftWideMemo

See note[10]

NTEXT[11]

See note[10]

See note[10]

See note[10]

See note[10]

ftOraClob

CLOB
NCLOB

-

-

-

-

-

 

ftBlob

LONG RAW

IMAGE

TINYBLOB
BLOB
MEDIUMBLOB
LONGBLOB
Spatial Data Types

BLOB BINARY

BYTEA

BLOB

ftOraBlob

BLOB

-

-

-

LARGE OBJECT

-

ftBytes

-

BINARY
TIMESTAMP

BINARY

-

-

-

ftVarBytes

RAW

VARBINARY

VARBINARY

CHAR
VARCHAR
(CHARSET = OCTETS)

-

BINARY
VARBINARY

 

ftDate

-

-

DATE

DATE

DATE

DATE

ftDateTime

DATE

DATE

DATETIME

TIMESTAMP

TIMESTAMP

TIMESTAMP
DATETIME

ftTime

-

-

TIME

TIME

TIME

TIME

ftTimeStamp

TIMESTAMP
TIMESTAMP WITH TIMEZONE

-

-

-

-

-

 

ftCursor

REF CURSOR

-

-

-

REFCURSOR

-

ftGuid

-

UNIQUEIDENTIFIER

-

-

-

-

ftVariant

-

SQL_VARIANT

-

-

-

-

 

NOT SUPPORTED

BFILE
OBJECT
XML

CURSOR
XML
TABLE

-

-

-

-

[1] – 如果FieldsAsString 选项被设置 True,则除BLOB和TEXT数据类型外,全部做为ftString来处理

[2] – Oracle NUMBER数据类型与Delphi数据类型对应方式:

if scale equals zero, provider checks values of the specific options to choose the correct Delphi type in the following order: 

1.1 field precision is less or equal Precision Smallint (default is 4) - uses ftSmallint;
1.2 field precision is less or equal Precision Integer (default is 9) - uses ftInteger;
1.3 field precision is less or equal Precision LargeInt (default is 18) - uses ftLargeint;

if scale is greater than zero, the appropriate Delphi type is chosen using the following sequence of rules:. 

2.1 field precision is less or equal PrecisionFloat (default is 0) - uses ftFloat;
2.2 EnableBCD is True and field precision, scale is less or equal PrecisionBCD (default is 14,4) - uses ftBCD;
2.3 EnableFMTBCD is True and field precision, scale is less or equal PrecisionFMTBCD (default is 38,38) - uses ftFMTBCD;
2.4 uses ftFloat.

[3] - The appropriate Delphi type is chosen using the following sequence of rules:

EnableBCD is True and field precision, scale is less or equal 14,4 - uses ftBCD; 

EnableFMTBCD is True - uses ftFMTBCD; 

uses ftFloat. 

[4] - If the EnableBoolean option is True

[5] - If the RawAsString option is True

[6] - If the BinaryAsString is True

[7] - If the UseUnicode option is True, all server types mapped to ftString will be mapped to ftWideString.

[8] - If the LongStrings option is False, and the field length is greater than 255, all server types mapped to ftString will be mapped to ftMemo.

[9] - For all Delphi versions prior to BDS 2006.

[10] - If the UseUnicode option is True, in BDS 2006 and later versions all server types mapped to ftMemo will be mapped to ftWideMemo.

[11] - For BDS 2006 and higher IDE versions.


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
MATLAB 创建传递函数模型 - 躬耕南阳发布时间:2022-07-18
下一篇:
Matlab中S函数建立与应用发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap