Delphi与各数据库数据类型比较
Delphi数据类型与各数据库数据类型对比如下表,如有具体说明见表中脚注:
|
Delphi Type |
Oracle Types |
SQL Server Types |
MySQL Types [1] |
InterBase Types |
PostgreSQL Types |
SQLite Types |
|
ftSmallint |
NUMBER(p, 0)[2] |
SMALLINT |
TINYINT(M) (M > 1) |
SMALLINT |
SMALLINT |
TINYINT |
|
ftWord |
- |
TINYINT |
TINYINT(M) UNSIGNED (M > 1) |
- |
- |
- |
|
ftInteger |
NUMBER(p, 0)[2] |
INT |
MEDIUMINT |
INTEGER |
INTEGER |
INTEGER |
|
ftLargeint |
NUMBER(p, 0)[2] |
BIGINT |
BIT |
BIGINT |
BIGINT |
BIGINT |
|
ftFloat |
NUMBER(p, s)[2] |
DECIMAL(p, s)[3] |
DECIMAL(p, s)[3] |
NUMBER(p, s)[3] |
DECIMAL[3] |
DECIMAL(p, s)[3] |
|
ftBCD |
NUMBER(p, s)[2] |
DECIMAL(p, s)[3] |
DECIMAL(p, s)[3] |
DECIMAL(p, s)[3] |
DECIMAL[3] |
DECIMAL[3] |
|
ftFMTBcd |
NUMBER(p, s)[2] |
DECIMAL(p, s) |
DECIMAL(p, s)[3] |
DECIMAL(p, s)[3] |
DECIMAL[3] |
DECIMAL[3] |
|
ftCurrency |
- |
MONEY |
- |
- |
MONEY |
MONEY |
|
ftBoolean |
- |
BIT |
BOOLEAN |
BOOLEAN |
BOOLEAN |
|
|
ftString |
VARCHAR2 |
CHAR |
CHAR |
CHAR |
CHAR |
|
|
ftWideString |
NCHAR |
|||||
|
ftMemo |
LONG |
TEXT |
TINYTEXT |
BLOB TEXT |
TEXT |
TEXT |
|
ftWideMemo |
NTEXT[11] |
|||||
|
ftOraClob |
CLOB |
- |
- |
- |
- |
- |
|
ftBlob |
LONG RAW |
IMAGE |
TINYBLOB |
BLOB BINARY |
BYTEA |
BLOB |
|
ftOraBlob |
BLOB |
- |
- |
- |
LARGE OBJECT |
- |
|
ftBytes |
- |
BINARY |
BINARY |
- |
- |
- |
|
ftVarBytes |
RAW |
VARBINARY |
VARBINARY |
CHAR |
- |
BINARY |
|
ftDate |
- |
- |
DATE |
DATE |
DATE |
DATE |
|
ftDateTime |
DATE |
DATE |
DATETIME |
TIMESTAMP |
TIMESTAMP |
TIMESTAMP |
|
ftTime |
- |
- |
TIME |
TIME |
TIME |
TIME |
|
ftTimeStamp |
TIMESTAMP |
- |
- |
- |
- |
- |
|
ftCursor |
REF CURSOR |
- |
- |
- |
REFCURSOR |
- |
|
ftGuid |
- |
UNIQUEIDENTIFIER |
- |
- |
- |
- |
|
ftVariant |
- |
SQL_VARIANT |
- |
- |
- |
- |
|
NOT SUPPORTED |
BFILE |
CURSOR |
- |
- |
- |
- |
[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.
Delphi与各数据库数据类型比较的更多相关文章
- MySQL数据库数据类型之集合类型SET测试总结
MySQL数据库提供针对字符串存储的一种特殊数据类型:集合类型SET,这种数据类型可以给予我们更多提高性能.降低存储容量和降低程序代码理解的技巧,前面介绍了首先介绍了四种数据类型的特性总结,其后又分别 ...
- java 数据类型与数据库 数据类型的对应关系
java 数据类型与数据库 数据类型的对应关系 CreationTime--2018年7月1日10点08分 Author:Marydon 相关推荐: java 读取clob
- [JNA系列]Java调用Delphi编写的Dll之Delphi与JAVA基本数据类型对比
Delphi与JAVA基本数据类型对比 类型 Delphi关键字 JAVA关键字 字节 备注 范围 整型 Shortint byte 1 有符号8位 -128..127 Byte 1 无符号8位 0 ...
- MYSQL数据库数据类型
07.14自我总结 MYSQL数据库数据类型 一.整数类型和浮点数典型 1.有符号/没符号 对于整数和负整数来说,默认情况下是有符号范围的 默认是有符号 有符号和没符号其实就是有没有包括负数,有符号是 ...
- Delphi开发的数据库程序在C:\PDOXUSRS.NET生成文件,拒绝访问及读写权限
Delphi开发的数据库程序在C:\PDOXUSRS.NET生成文件,拒绝访问及读写权限, "无法打开 PARADOX.NET.这个文件可以随便删除的,下次会自动产生. Permission ...
- sql server 2008 数据库数据类型
sql server 2008 数据库数据类型 一.数值型 int:整数类型,它的精度由执行机构确定.. smallint:短整数类型,它的精度由执行机构确定.. numeric(p,s):数值型,并 ...
- delphi基础篇之数据类型概论
delphi基础篇之数据类型概论 Object Pascal 语言提供了非常丰富的数据类型,即简单类型(Simple).字符串类型(String).结构类型(Struct).指针类型(Pointer) ...
- delphi的万能数据库操作
好多人都抱怨delphi没有提供一个可以把任意数据放入数据库的控件,虽然说用代码实现也不难,但是有控件会更方便,这次我终于还是抽出空来做了这么个控件,以后就可以直接拖放了.它支持把任意数据类型写入数据 ...
- MySQL(二) 数据库数据类型详解
序言 今天去健身了,感觉把身体练好还是不错的,闲话不多说,把这个数据库所遇到的数据类型今天统统在这里讲清楚了,以后在看到什么数据类型,咱度应该认识,对我来说,最不熟悉的应该就是时间类型这块了.但是通过 ...
随机推荐
- MySQL binlog 企业案例升级版
需求:1.创建一个数据库 oldboy2.在oldboy下创建一张表t13.插入5行任意数据4.全备5.插入两行数据,任意修改3行数据,删除1行数据6.删除所有数据7.再t1中又插入5行新数据,修改3 ...
- docker启动时报错Error response from daemon: driver failed programming external connectivity on endpoint *
公司服务器由于断电重启,部署在docker服务上的一些web服务需要重新开启容器, [root@localhost ~]# docker ps CONTAINER ID IMAGE COMMAND C ...
- Fibonacci数列的两种实现方式
斐波那契数列的形式为:1,1,2,3,5,8,13,21......从第三项开始,后面的每一项都是前面两项的和. 实现的方式有一下 两种: 一:递归方式实现 def fib(n): if n < ...
- Python3中的赋值操作、浅拷贝与深拷贝
一:关于赋值操作与浅拷贝 1.变量的赋值 首先以一个例子来说明一下:定义变量a = 1,使b = a.开始的情况下打印a与b都为1(显而易见,哈哈) 但是接下来,我们做一下改动,令 a = 222,再 ...
- [UE4]加入音效
- IE浏览器强制不是要兼容视图
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta ht ...
- Delphi7 中文汉字转网址格式 Utf8编码转换(淘宝搜索中文转网址)
function HttpEncode(S:AnsiString):string; var P:^Byte; I:Cardinal; begin Result:=''; P:=@S[1 ...
- django之models模块使用
定义模型 将数据库表定义成类,集成models.Model from django.db import models # Create your models here. class Author(m ...
- [python] 初学python,打卡签到
自学python第一周,学了变量和简单的条件判断. 附上猜数游戏代码 #Author:shijt trueAge=40 count=0 while count<3: guessAge=int(i ...
- linux系统上面使用tab补全命令
tab的模块脚本 [root@centos7 ~]# cat tab.py #!/usr/bin/python3.6 # python startup file import sys import r ...