数据库表数据类型
一、整数数据类型:整数数据类型是最常用的数据类型之一。
1、INT(INTEGER)
INT (或INTEGER)数据类型存储从-2的31次方 (-2 ,147 ,483 ,648) 到2的31次方-1 (2 ,147 ,483,647) 之间的所有正负整数。每个INT 类型的数据按4 个字节存储,其中1 位表示整数值的正负号,其它31 位表示整数值的长度和大小。
2、SMALLINT
SMALLINT 数据类型存储从-2的15次方( -32, 768) 到2的15次方-1( 32 ,767 )之间的所有正负整数。每个SMALLINT 类型的数据占用2 个字节的存储空间,其中1 位表示整数值的正负号,其它15 位表示整数值的长度和大小。
二、浮点数据类型:浮点数据类型用于存储十进制小数。浮点数值的数据在SQL Server 中采用上舍入(Round up 或称为只入不舍)方式进行存储。
1、REAL数据类型
REAL数据类型可精确到第7 位小数,其范围为从-3.40E -38 到3.40E +38。 每个REAL类型的数据占用4 个字节的存储空间。
2、FLOAT
FLOAT数据类型可精确到第15 位小数,其范围为从-1.79E -308 到1.79E +308。 每个FLOAT 类型的数据占用8 个字节的存储空间。 FLOAT数据类型可写为FLOAT[ n ]的形式。n 指定FLOAT 数据的精度。n 为1到15 之间的整数值。
当n 取1 到7 时,实际上是定义了一个REAL 类型的数据,系统用4 个字节存储它;当n 取8 到15 时,系统认为其是FLOAT 类型,用8 个字节存储它。
三、二进制数据类型
1、BINARY
BINARY 数据类型用于存储二进制数据。其定义形式为BINARY( n), n 表示数据的长度,取值为1 到8000 。在使用时必须指定BINARY 类型数据的大小,至少应为1 个字节。BINARY 类型数据占用n+4 个字节的存储空间。
在输入数据时必须在数据前加上字符“0X” 作为二进制标识,如:要输入“abc ”则应输入“0xabc ”。若输入的数据过长将会截掉其超出部分。若输入的数据位数为奇数,则会在起始符号“0X ”后添加一个0,如上述的“0xabc ”会被系统自动变为“0x0abc”。
2、VARBINARY
VARBINARY数据类型的定义形式为VARBINARY(n)。 它与BINARY 类型相似,n 的取值也为1 到8000, 若输入的数据过长,将会截掉其超出部分。
不同的是VARBINARY数据类型具有变动长度的特性,因为VARBINARY数据类型的存储长度为实际数值长度+4个字节。当BINARY数据类型允许NULL 值时,将被视为VARBINARY数据类型。
四、逻辑数据类型
1、BIT:BIT数据类型占用1 个字节的存储空间,其值为0 或1 。如果输入0 或1 以外的值,将被视为1。 BIT 类型不能定义为NULL 值(所谓NULL 值是指空值或无意义的值)。
五、字符数据类型:字符数据类型是使用最多的数据类型。它可以用来存储各种字母、数字符号、特殊符号。一般情况下,使用字符类型数据时须在其前后加上单引号’或双引号” 。
1、CHAR
CHAR 数据类型的定义形式为CHAR[ (n) ]。 以CHAR 类型存储的每个字符和符号占一个字节的存储空间。n 表示所有字符所占的存储空间,n 的取值为1 到8000, 即可容纳8000 个ANSI 字符。
若不指定n 值,则系统默认值为1。 若输入数据的字符数小于n,则系统自动在其后添加空格来填满设定好的空间。若输入的数据过长,将会截掉其超出部分。
(1)数据库表数据类型扩展阅读:
SQL包括了所有对数据库的操作,主要是由4个部分组成:
1、数据定义:这一部分又称为“SQL DDL”,定义数据库的逻辑结构,包括定义数据库、基本表、视图和索引4部分。
2、数据操纵:这一部分又称为“SQL DML”,其中包括数据查询和数据更新两大类操作,其中数据更新又包括插入、删除和更新三种操作。
3、数据控制:对用户访问数据的控制有基本表和视图的授权、完整性规则的描述,事务控制语句等。
4、嵌入式SQL语言的使用规定:规定SQL语句在宿主语言的程序中使用的规则。
❷ 数据库常见的数据类型大致分为几类,请分别举例
数据库一般分为两种类型:关系型数据库和非关系型数据库
关系型数据库
关系型数据库是最常见的数据,其内部采用库表结构,每一条记录可以记录多个数据类型的数据.一条记录内的数据彼此之间存在关系.
例如:
IDnameagesex
1张三12男
因为彼此之间存在关系,所以不论你搜索id=1/name=张三/age=12/sex=男都能搜出来这条记录.
代表软件:Mysql accessSQLServer Oracle
非关系型数据库
非关系型数据库是目前比较新的一种数据库,特点就是数据全部由键值对(key/value)组成.获取数据一般只通过键(key)来获取.
例如:
IDValue
1aaa.avi
2bbb.MP4
这种数据库优点是,速度快,需要明确的目标key来快速指定和获取目标.一般目前在大数据存储上体现着优势.例如大型视频库,只需要知道视频的id就能快速得知视频位置.
当然这不是主要的,非关系型数据库有个极大的优势,就是一般都采用内存缓存方式存在.它们一般把数据拷贝一份放在内存中,这样可以更加快速的读取数据(内存的速度一般是硬盘的几十倍).
非关系型数据库另一个主要用途是快速缓存,即快速的缓存一些数据,但并不一定要长期保留,例如直播中的弹幕,一般都会采用非关系型数据库来保存,到期之后批量写入关系型数据库保存,然后自我清空.
代表软件:Mongodb Redis Memcache
实际使用
在实际使用中,一般都是关系型数据库独立使用,关系型数据库+非关系型数据库一起用这两种方式.因为非关系型数据库一般不用来存储,所以还是需要关系型数据库来保存一些数据.
总结
关系型数据库:存储长期稳定数据,例如会员信息等等.但是读取写入速度慢,高并发时较麻烦,容易产生瓶颈.
非关系型数据库:存储临时数据或需要快速读取数据,例如弹幕等.但是一般不用来保存数据,内存关机即清空.
❸ 数据库中所有的数据类型
SQL 用于各种数据库的数据类型:
一、MySQL 数据类型:
在 MySQL 中,有三种主要的类型:Text(文本)、Number(数字)和 Date/Time(日期/时间)类型。
1、Text 类型。
❹ 数据库中数据类型有哪些呢
数据类型 类型 描 述 bit 整型 bit 数据类型是整型,其值只能是0、1或空值。这种数据类型用于存储只有两种可能值的数据,如Yes 或No、True 或Fa lse 、On 或Off int 整型 int 数据类型可以存储从- 231(-2147483648)到231 (2147483 647)之间的整数。存储到数据库的几乎所有数值型的数据都可以用这种数据类型。这种数据类型在数据库里占用4个字节 smallint 整型 smallint 数据类型可以存储从- 215(-32768)到215(32767)之间的整数。这种数据类型对存储一些常限定在特定范围内的数值型数据非常有用。这种数据类型在数据库里占用2 字节空间 tinyint 整型 tinyint 数据类型能存储从0到255 之间的整数。它在你只打算存储有限数目的数值时很有用。 这种数据类型在数据库中占用1 个字节 numeric精确数值型 numeric数据类型与decimal 型相同 decimal 精确数值型 decimal 数据类型能用来存储从-1038-1到1038-1的固定精度和范围的数值型数据。使用这种数据类型时,必须指定范围和精度。 范围是小数点左右所能存储的数字的总位数。精度是小数点右边存储的数字的位数 money 货币型 money 数据类型用来表示钱和货币值。这种数据类型能存储从-9220亿到9220 亿之间的数据,精确到货币单位的万分之一 smallmoney 货币型 smallmoney 数据类型用来表示钱和货币值。这种数据类型能存储从-214748.3648 到214748.3647 之间的数据,精确到货币单位的万分之一 float 近似数值型 float 数据类型是一种近似数值类型,供浮点数使用。说浮点数是近似的,是因为在其范围内不是所有的数都能精确表示。浮点数可以是从-1.79E+308到1.79E+308 之间的任意数 real 近似数值型 real 数据类型像浮点数一样,是近似数值类型。它可以表示数值在-3.40E+38到3.40E+38之间的浮点数 datetime 日期时间型 datetime数据类型用来表示日期和时间。这种数据类型存储从1753年1月1日到9999年12月3 1日间所有的日期和时间数据, 精确到三百分之一秒或3.33毫秒 Smalldatetime 日期时间型 smalldatetime 数据类型用来表示从1900年1月1日到2079年6月6日间的日期和时间,精确到一分钟 cursor 特殊数据型 cursor 数据类型是一种特殊的数据类型,它包含一个对游标的引用。这种数据类型用在存储过程中,而且创建表时不能用 timestamp 特殊数据型 timestamp 数据类型是一种特殊的数据类型,用来创建一个数据库范围内的唯一数码。 一个表中只能有一个timestamp列。每次插入或修改一行时,timestamp列的值都会改变。尽管它的名字中有“time”, 但timestamp列不是人们可识别的日期。在一个数据库里,timestamp值是唯一的 Uniqueidentifier 特殊数据型 Uniqueidentifier数据类型用来存储一个全局唯一标识符,即GUID。GUID确实是全局唯一的。这个数几乎没有机会在另一个系统中被重建。可以使用NEWID 函数或转换一个字符串为唯一标识符来初始化具有唯一标识符的列 char 字符型 char数据类型用来存储指定长度的定长非统一编码型的数据。当定义一列为此类型时,你必须指定列长。当你总能知道要存储的数据的长度时,此数据类型很有用。例如,当你按邮政编码加4个字符格式来存储数据时,你知道总要用到10个字符。此数据类型的列宽最大为8000 个字符 varchar 字符型 varchar数据类型,同char类型一样,用来存储非统一编码型字符数据。与char 型不一样,此数据类型为变长。当定义一列为该数据类型时,你要指定该列的最大长度。 它与char数据类型最大的区别是,存储的长度不是列长,而是数据的长度 text 字符型 text 数据类型用来存储大量的非统一编码型字符数据。这种数据类型最多可以有231-1或20亿个字符 nchar 统一编码字符型 nchar 数据类型用来存储定长统一编码字符型数据。统一编码用双字节结构来存储每个字符,而不是用单字节(普通文本中的情况)。它允许大量的扩展字符。此数据类型能存储4000种字符,使用的字节空间上增加了一倍 nvarchar 统一编码字符型 nvarchar 数据类型用作变长的统一编码字符型数据。此数据类型能存储4000种字符,使用的字节空间增加了一倍 ntext 统一编码字符型 ntext 数据类型用来存储大量的统一编码字符型数据。这种数据类型能存储230 -1或将近10亿个字符,且使用的字节空间增加了一倍 binary 二进制数据类型 binary数据类型用来存储可达8000 字节长的定长的二进制数据。当输入表的内容接近相同的长度时,你应该使用这种数据类型 varbinary 二进制数据类型 varbinary 数据类型用来存储可达8000 字节长的变长的二进制数据。当输入表的内容大小可变时,你应该使用这种数据类型 image 二进制数据类型 image 数据类型用来存储变长的二进制数据,最大可达231-1或大约20亿字节
❺ 二、数据库与数据表--2、SQLServer的数据类型
(1)文本类型: 字符数据包含任意字母、符号或数字字符的组合
char: 固定长度的非Unicode字符数据,最大长度为8000个字符
varchar: 可变长度的非Unicode数据,最大长度为8000个字符
text: 存储长文本信息,最大长度为2^31-1(2147483647)个字符
nchar: 固定长度的Unicode数据,最大长度为4000个字符
narchar: 可变长度的Unicode数据,最大长度为4000个字符
ntext: 存储长文本信息,最大长度为2^30-1(1073741823)个字符
(Unicode是国际组织制定的可以容纳世界上所有文字和符号的字符编码方案,编码数据长度是非编码数据的两倍)
(2)整数类型
bigint: 占用8个字节,可表示范围-2^63~2^63-1之间的整数
int: 占用4个字节
smallint: 占用2个字节
tinint: 占用1个字节,可表示0~255之间的整数
(3)精确数字类型
decimal: -10^38~10^38-1之间固定精度和小数位的数字
numeric(常用): 功能等同于decimal
写法:
decimal(整数,小数)和numeric(整数,小数)——若不指定位数,默认18位整数,0位小数:
(4)近似数字(浮点)类型(很少用,可以用numeric替代)
float[(n)]: 表示范围-1.79E+308~1.79E+308
n 表示精度,在1-53之间取值,当n在1~24之间时,精度为7位有效数字,占用4个字节;当n在25~53之间时,精度为15位有效数字,占8个字节。
real: 表示范围-3.40E+38~3.40E+38占用4个字节,相当于float(24)
(5)日期类型
datetime: 允许范围1753-1-1至9999-1-1
smalldatetime(常用): 允许范围1900-1-1至2079-6-6
时间精度不同: datetime精确到3%秒;smalldatetime精确到1分钟
格式说明:
分隔符数字方式: 2013-08-20 或 08/20/2013
纯数字方式: 08202013
英文数字类型: Aug 20,2013
注意问题: 日期在使用的时候需要使用单引号' ' 括起来
(6)货币类型
money: 货币数值介于-2^63与2^63-1之间,精确到货币单位的千分之一
smallmoney: 货币数据介于-214748.3648与214748.3648之间,精确到货币单位的千分之十
(7)位类型
bit: 表示“是/否”类型的数据(1/0,true/false)
(8)二进制类型
binary: 固定长度的二进制数据,最大8000个字节
vbinary: 可变长度的二进制数据,最大8000个字节
image: 可变长度的二进制数据,最大长度2^31个字节—— 应用场合: 可存储图片
❻ 数据库的数据类型
数据库的常用数据类型如下:
一、整数数据类型:整数数据类型是最常用的数据类型之一。二、浮点数据类型:浮点数据类型用于存储十进制小数。浮点数值的数据在SQLServer中采用上舍入(Rounp或称为只入不舍)方式进行存储。三、二进制数据类型。四、逻辑数据类型。五、字符数据类型:字符数据类型是使用最多的数据类型。它可以用来存储各种字母、数字符号、特殊符号。一般情况下,使用字符类型数据时须在其前后加上单引号’或双引号”。
以上就是数据库的常用数据类型。
❼ 数据库中数据类型有哪些
Character 数据类型
Character 数据类型用来存储字母数字型数据。当你在oracle 中定义一个character 数据时,通常需要制定字段的长度,它是该字段的最大长度。ORACLE提供以下几种character 数据类型:
CHAR() CHAR数据类型是一种有固定长度和最大长度的字符串。存储在数据类型为CHAR字段中的数据将以空格的形式补到最大长度。长度定义在1——2000字节之间。
当你创建一个CHAR型字段,数据库将保证在这个字段中的所有数据是定义长度,如果某个数据比定义长度短,那么将用空格在数据的右边补到定义长度。如果长度大于定义长度将会触发错误信息。
VARCHAR() varchar型数据是varchar2型数据的快照。
VARCHAR2() varchar2数据类型是一种可变长度的、有最大长度的字母数字型数据。Varchar2类型的字段长度可以达到4000字节,Varchar2类型的变量长度可以达到32676字节。
一个空的varchar2(2000)字段和一个空的varchar2(2)字段所占用的空间是一样的。
NCHAR() 和 NVARCHAR2() NCHAR() 和 NVARCHAR2()数据类型分别与CHAR() 和 VARCHAR2()类型是相同的,只不过它们用来存储NLS(National Language Support)数据。
LONG LONG 数据类型是一个遗留下来的而且在将来不会被支持的数据类型。它将被LOB(Large Object)数据类型所代替。
比较规则 Varchar2和char数据类型根据尾部的空格有不同的比较规则。对Char型数据,尾部的空格将被忽略掉,对于Varchar2型数据尾部带空格的数据排序比没有空格的要大些。比如:
Char 型数据: ‘YO’=‘YO ’
Varchar2型数据: ‘YO’<’YO ’
Numberic 数据类型
Numberic 数据类型用来存储负的和正的整数、分数和浮点型数据,范围在-1*10-103 和9.999…99*10125之间,有38位的精确度。标识一个数据超出这个范围时就会出错。
Number(
,) Number数据类型存储一个有p位精确度的s位等级的数据。
DATE 数据类型
DATE 数据类型用来存储日期和时间格式的数据。这种格式可以转换为其他格式的数据去浏览,而且它有专门的函数和属性用来控制和计算。以下的几种信息都包含在DATE数据类型中:
Century
Year
Month
Day
Hour
Minute
Second
LOB 数据类型
LOB(Large Object) 数据类型存储非结构化数据,比如二进制文件,图形文件,或其他外部文件。LOB 可以存储到4G字节大小。数据可以存储到数据库中也可以存储到外部数据文件中。LOB数据的控制通过DBMS_LOB 包实现。BLOB, NCLOB, 和CLOB 数据可以存储到不同的表空间中,BFILE存储在服务器上的外部文件中。LOB数据类型有以下几种:
BLOB: 二进制数据
CLOB: 字符型数据
BFILE: 二进制文件
其他数据类型
ROWID ROWID 数据类型是ORACLE数据表中的一个伪列,它是数据表中每行数据内在的唯一的标识。