常见数据库基本数据类型整理

ORACLE数据库类型

 

字符类型
char[(length)] 定长字符 最长2000字节
varchar2[(length)] 可变长度的字符数据类型,最长4000字节
NCHAR[(length)] 固定长度的字符数据类型,由国际字符语言(national language Support,NLS)字符集字符组成,最长2000字节
LONG 可变长度的字符数据类型 最长2GB
RAW 原始的二进制数据类型,最长2000字节
long raw 原始的二进制数据类型,最长2GB
rawid 数据库中一窜12字节地址,用于定位磁盘上某一行及其所指向的对象
urawid 通用的rawid,用于表,是一种行主键的表示

大对象
blob 大原始二进制对象,最大长度4GB
clob 大字符对象,最大长度4GB
nclob 由NLS字符集字符组成的大字符数据,最长长度4GB
bfile 提供对存储在oracle数据库之外的操作系统文件中的二进制文件访问,最大4GB

日期类型
date 定宽的7字节的日期/时间数据类型,包含7个属性:世纪、年、月、天、小时、分、秒

timestamp 7字节或12字节的定宽日期/时间数据类型,与DATE不同时可以包含小数秒,小数点最多可保留9位

timestamp with time zorn 提供对时区的支持

timestamp with local time zorn 对时区敏感的时间类型

interal year to month 存储年月段,可对date和timestamp类型进行加减运算

interval day to second 存储天/小时/分/秒时间段,支持9位小数秒

数据类型
number[(precision[,scale])] 范围1~38
   精度(precision) 数字中的数字位数
   尾数(scale) 小数点右边的数字位
  
   oralce只提供一种数字类型:NUMBER 类型,oracle中存储的所有数字数据多可当作number类型(10g后 支持binary_float,binary_double)。下面数据类型可与ANSI SQL兼容:
   /**
   ANSI SQL :美国国家标准化组织(ANSI)”是一个核准多种行业标准的组织。SQL作为关系型数据库所使用的标准语言,最初是基于IBM的实现在1986年被批准的。1987年,“国际标准化组织(ISO)”把ANSI SQL作为国际标准。这个标准在1992年进行了修订(SQL-92),1999年再次修订(SQL-99)。目前最新的是SQL-2003。
   **/
   float
   numberic
   decimal
   number
   integer
   int
   smallint
   double precision
   real


DB2数据库类型
 
  db2提供自建数据类型,也支持自定义类型。如引用类型。
 
  数字类型
  smallint 2字节整数,5位精度,范围-32768~32768
  integer  4字节整数,10位精度,范围 -2147483648~2147483647
  bigint   占8字节存储整数, 19位精度,范围 -9223372036854775808~9223372036854775807
  real 单精度浮点型 范围 -3.402*10^38~-1.175*10^-37 或1.175*10^-37~3.402*10^38
  double/float 双精度浮点型 64位实数,范围 -1.79769*10^308~-2.225*10^-307或2.225*10^-307~1.79769*10^308
  dicimal/nunbric 最大精度支持小数点后31位
 
  字符类型
  CHAR 定长
  VARCHAR 可变长,最长32672字节
  long varchar 可变长,最长32700字节
  clob 可变长,最大2GB字节
 
  图形类型(GRAPHIC STRINGS)
        一组字节序列,用于呈现双字节字符数据。(图形的二进制存储)
  GRAHIC 定长
  vargraphic 可变长
    
  二进制类型
  BLOB 可变长二进制存储类型,最大达2GB字节
  lobs 大对象存储类型,BLOB,CLOB,DBCLOB等类型统称
 
  日期/时间类型
  date 日期类型,由三部分组成,年月日,年的范围0001~9999
  time 时间类型,小时/分/秒
  timestamp 时间类型,7部分组成(year,month,day,hour,minute,second,microsecend)
 
  datalink 数据库引用类型
 
  xml数据类型,db2对xml的一种内部表示形式。只能作为函数输入
 
  用户自定义类型
    区别类型
       eg.
        create distinct type AUDIO as blb(1m) . 用AUDIOB表示BLOb(1M)这种数据类型
   
    结构类型
         1 type a directly uses type b
         2.type a directyly uses some type c,and c indrectly uses type b
   
    引用类型  与结构类型结合使用,用于对基本数据类型的公用表示类型的引用。
   

mysql数据库(整理与网络详,情可翻看相关手册)

数据类型
1.整型(xxxint)
MySQL数据类型 含义
tinyint(m) 1个字节表示(-128~127)
smallint(m) 2个字节表示(-32768~32767)
mediumint(m) 3个字节表示(-8388608~8388607)
int(m) 4个字节表示(-2147483648~2147483647)
bigint(m) 8个字节表示(+-9.22*10的18次方)

分为
SIGNEN: 有符整数,可存储正数和负数,如 TINYINT SIGNED 表示的范围是 -127 ~ 128
UNSIGNED: 无符整数,只能存储正数,但是表示的值是有符整数的两倍, 如 TINYINT UNSIGNED 表示的范围是 0 ~ 255
有符整数和无符整数只有表示的值大小上的区别,存储空间和效率上都是一样的


2.浮点型(float和double)MySQL数据类型 含义
float(m,d) 单精度浮点型,8位精度(4字节),m是十进制数字的总个数,
d是小数点后面的数字个数。
double(m,d) 双精度浮点型,16位精度(8字节)

3.定点数(decimal)
decimal(m,d) 定点类型
浮点型在数据库中存放的是近似值,而定点类型在数据库中存放的是精确值。参数m是定点类型数字的最大个数(精度),范围为0~65,d小数点右侧数字的个数,范围为0~30,但不得超过m。
对定点数的计算能精确到65位数字。

4.字符串(char,varchar,xxxtext)
char(n) 固定长度的字符串,最多255个字符
varchar(n) 固定长度的字符串,最多65535个字符
tinytext 可变长度字符串,最多255个字符
text 可变长度字符串,最多65535个字符
mediumtext 可变长度字符串,最多2的24次方-1个字符
longtext 可变长度字符串,最多2的32次方-1个字符


5.日期时间类型(date,time,datetime,timestamp)
date 日期'2008-12-2'
time 时间'12:25:36'
datetime 日期时间'2008-12-2 22:06:44'
timestamp 不固定

6.BLOB和TEXT

BLOB和TEXT的唯一区别是BLOB保存二进制类型而且没有字符集好排序规则,而TEXT保存字符文本,且有字符集和排序规则
它们的排序规则按照 max_short_length 规定长度的前若干个字符进行排序

位集数据类型

7.位集

BIT: 最大 64 bit,一般用于保存一个true/false值,如BIT(1),占用 1 bit,远小于使用字符表示

SET: 用于保存多个true/false值,可用于权限管理,效果见下图

8.枚举

ENUM: 类似于SET,但是只能插入1个值,一般可用来表示性别等唯一且范围固定的属性(男,女..)

 

SQL SERVER 数据库


bit 0或1的整型数字

int  从-2^31(-2,147,483,648)到2^31(2,147,483,647)的整型数字
 
smallint 从-2^15(-32,768)到2^15(32,767)的整型数字
 
tinyint 从0到255的整型数字

decimal  从-10^38到10^38-1的定精度与有效位数的数字
 
numeric decimal的同义词

money 从-2^63(-922,337,203,685,477.5808)到2^63-1(922,337,203,685,477.5807)的货币数据,最小货币单位千分之十
 
smallmoney 从-214,748.3648到214,748.3647的货币数据,最小货币单位千分之十

float 从-1.79E+308到1.79E+308可变精度的数字
 
real 从-3.04E+38到3.04E+38可变精度的数字

datetime 从1753年1月1日到9999年12日31的日期和时间数据,最小时间单位为百分之三秒或3.33毫秒
 
smalldatetime 从1900年1月1日到2079年6月6日的日期和时间数据,最小时间单位为分钟

timestam 时间戳,一个数据库宽度的唯一数字
 
uniqueidentifier 全球唯一标识符GUID
 
char 定长非Unicode的字符型数据,最大长度为8000
 
varchar 变长非Unicode的字符型数据,最大长度为8000
 
text 变长非Unicode的字符型数据,最大长度为2^31-1(2G)

nchar 定长Unicode的字符型数据,最大长度为8000

nvarchar 变长Unicode的字符型数据,最大长度为8000
 
ntexz 变长Unicode的字符型数据,最大长度为2^31-1(2G)
 
binary 定长二进制数据,最大长度为8000

varbinary 变长二进制数据,最大长度为8000
 
image 变长二进制数据,最大长度为2^31-1(2G)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值