SQL学习笔记 数据类型

  1. 预定义数据类型
    包括:数字、 字符串、日期和时间、XML等类型。
  • 精确数字包括:
    类型 字节 范围
    int 4 ±21亿多
    bigint 8 ±9223372036854775808
    smallint 2 ±32768
    tinyint 1 0-255
    decimal 所需空间 如decimal(15,3) 表示整数 12位 小数3位 -
    money 4小数的decimal 共8位 -
    smallmoney 4字节 -
  • 近似数字:
    类型 精度/字节
    float 可精确到15位小数 8字节
    real 可精确到7位小数 4字节

oracle中适用mumber代替所有类型

  • 字符串类型:
类型 说明
char char(n) n=1-8000个ANSI字符 默认为1; 如果输入小于指定值,用空格补齐
nchar nchar(n) n=1-4000个Unicode
varchar varchar(n) n=1-8000, 少于的话自动缩小空间
nvarchar nvarchar(n) n=1-4000 unicode
Text 大量文本数据,理论容量21亿多字节,根据具体需要确定容量
ntext unicode
  • 二进制字符串
    存储字节序列,存储图片,视频,可执行程序等
类型 说明
binary binary(n) n=1-8000 ,输入数据时,必须以0x开头,如输入good应输入'0xgood'.
varbinary 数据长度可变。
image 大量二进制数据,容量2^31-1个字符,输入时候,也必须输入0x开头
  • 日期和时间
类型 说明
datatime 存储日期和时间 8字节存储1753.1.1 0:00:00-9999.12.31 23:59:59
smalldata 4字节 1900.1.1 0:00:00--2079.6.6 23:59:00 一般输入形式为 2003-5-2 2003/05/02等 时间 hh:mm:ss.ms
  • XML数据
    可解析XML数据

  • 自定义数据
    包括表类型和别名类型
    表类型:用于存储对表或视图处理后的结果集如:

use db_mysql
create  type addr_type as table
(
       street  varchar(30),
       city       varchar(30),
       country  varchar(30)
)

运行后可在数据库中创建一个表类型名称为 addr_type。
使用:

use db_mysql
create   table my_table
(
      id  int,
      sname   varchar(30),
      saddress  addr_type
)

别名使用内置数据创建数据类型 如:

create  type  my_type as decimal(12,2) not null
  • 其他类型数据
类型 说明
boolean 1byte 0/1
SQL_VARIANT 可以存储数字,字符串,日期 二进制不能存储max类型
rowid 特殊Oracle类型,用于存储数据库中每一行的唯一地址。
urowid 与rowid类似,用于索引表
bfile 特殊Oracle类型,访问在Oracle外部的二进制文件。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。