delphi mysql类_Delphi与各数据库数据类型比较

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

Delphi

Type

Oracle Types

SQL Server

Types

MySQL

Types [1]

InterBase

Types

PostgreSQL

Types

SQLite

Types

ftSmallint

NUMBER(p, 0)[2]

(p 

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 

INT

MEDIUMINT

MEDIUMINT UNSIGNED

INT

INTEGER

INTEGER

INTEGER

INT

ftLargeint

NUMBER(p, 0)[2]

(9 

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 

DECIMAL(p, s)[3]

(p 

DECIMAL(p, s)[3]

(p 

DECIMAL(p, s)[3]

(p 

DECIMAL[3]

DECIMAL[3]

ftFMTBcd

NUMBER(p, s)[2]

(14 

(4 

DECIMAL(p, s)

(14 

(4 

DECIMAL(p, s)[3]

(14 

(4 

DECIMAL(p, s)[3]

(14 

(4 

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

ftMemo

TEXT

NTEXT[9]

TINYTEXT

TEXT

MEDIUMTEXT

LONGTEXT

BLOB TEXT

TEXT

TEXT

CLOB

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.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值