数据库常用数据类型
MySQL(二)数据库数据类型详解
![MySQL(二)数据库数据类型详解](https://img.taocdn.com/s3/m/861dfbd3d4bbfd0a79563c1ec5da50e2524dd1ba.png)
MySQL(⼆)数据库数据类型详解 序⾔ 今天去健⾝了,感觉把⾝体练好还是不错的,闲话不多说,把这个数据库所遇到的数据类型今天统统在这⾥讲清楚了,以后在看到什么数据类型,咱度应该认识,下⾯就跟着我的节奏去把这个拿下吧。
---WZY⼀、数据类型 MySQL的数据类型有⼤概可以分为5种,分别是整数类型、浮点数类型和定点数类型、⽇期和时间类型、字符串类型、⼆进制类型。
现在可以来看看你对这5种类型的熟悉程度,哪个看起来懵逼了,那就说明⾃⼰哪个不熟悉,不理解。
注意:整数类型和浮点数类型可以统称为数值数据类型,这不难理解。
数值数据类型 整数类型:TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT 浮点数类型:FLOAT、DOUBLE 定点⼩数:DECIMAL ⽇期/时间类型 YEAR、TIME、DATE、DATETIME、TIMESTAMP 字符串类型 CHAR、VARCHAR、TEXT、ENUM、SET等 ⼆进制类型 BIT、BINARY、VARBINARY、BLOB 1、整数类型 不管你学什么语⾔,在基础⽅⾯,都应该知道 1个字节= 8位⼆进制数。
每个类型的取值范围也就能够知道,⽐如TINYINT占⽤1个字节,也就是8位,2的8次⽅减1等于255,也就是说如果代表没符号的整数,该取值范围为0~255,如果是有符号的,最⾼位为符号号位,也就是2的7次⽅减1,也就是127,取值范围为-128~127,为什么需要减1,这个问题就需要考虑临界值的问题了。
⽽考虑临界值问题⼜有需要讨论原码补码反码的知识,这些度不是我们讨论的重点,所以在这就⾃⾏百度。
给出⼀张范围表,给⼤家做参考。
不同整数类型的取值范围 根据⾃⼰所需去选取不同的类型名称, 例如: CREATE TABLE aaa( id INT(10) PRIMARY KEY, age INT(6) ); 这个例⼦中INT(10)、INT(6) 括号中的数字表⽰的是该数据类型指定的显⽰宽度,指定能够显⽰的数值中数字的个数。
高斯db 数据类型
![高斯db 数据类型](https://img.taocdn.com/s3/m/44849d54640e52ea551810a6f524ccbff021ca5f.png)
高斯DB数据类型高斯数据库(GaussDB)是华为基于openGauss自研生态推出的云化企业级分布式关系型数据库,它支持多种数据类型,主要包括数值型、字符型、日期/时间型、布尔型等。
以下是一些常见的高斯数据库数据类型:1.数值型(Numeric Types):•整型(Integer):例如INT•小数型(Decimal):例如DECIMAL•大整数(Big Integer):例如BIGINT•浮点型(Floating-Point Types):例如FLOAT(单精度浮点数)和DOUBLE(双精度浮点数)2.字符型(Character Types):•字符串(String):例如CHAR、VARCHAR、TEXT、CLOB•二进制数据(Binary Data):例如BINARY、VARBINARY、BLOB3.日期/时间型(Date and Time Types):•日期(Date):例如DATE•时间(Time):例如TIME•时间戳(Timestamp):例如TIMESTAMP4.布尔型(Boolean Type):•布尔值(Boolean):例如BOOLEAN此外,高斯数据库还支持其他数据类型,如XML、JSON、ARRAY 等。
这些数据类型为数据库中的字段提供了丰富的存储和操作选项,以满足不同的应用需求。
每种数据类型都有其特点和适用范围,它们在数据库中的作用主要包括存储数据、约束数据范围、提高查询效率、降低存储空间和提高数据安全性等。
需要注意的是,数据类型的使用和选择应根据具体的业务需求、数据特征和数据库性能要求来确定。
在设计数据库时,开发人员应充分了解各种数据类型的特点和使用场景,并合理选用数据类型,以保证数据库的高效性和稳定性。
mysql数据库的number类型
![mysql数据库的number类型](https://img.taocdn.com/s3/m/eb85b4b4900ef12d2af90242a8956bec0975a503.png)
mysql数据库的number类型全文共四篇示例,供读者参考第一篇示例:MySQL数据库的Number类型是一种非常常用的数据类型,它用来存储数值型数据,包括整数和小数。
在实际的数据库设计和开发中,我们经常会用到Number类型来存储各种数字数据,比如订单金额、产品价格、数量等等。
在本文中,我们将详细介绍MySQL数据库中的Number类型,包括其各种子类型和用法。
MySQL数据库中的Number类型主要包括两种子类型,即整数型和浮点型。
整数型包括TINYINT、SMALLINT、MEDIUMINT、INT和BIGINT,分别用来存储不同范围的整数数据。
浮点型包括FLOAT和DOUBLE,用来存储小数数据。
下面我们将分别介绍这些Number类型的特点和用法。
1. TINYINTTINYINT类型用来存储小范围的整数数据,取值范围为-128到127。
TINYINT类型占用1个字节的存储空间,适用于存储性别、状态等只有两个取值的数据。
6. FLOATFLOAT类型用来存储单精度浮点数,即小数数据。
FLOAT类型占用4个字节的存储空间,可以存储6-7位的有效数字,适用于存储科学计算、工程测量等领域的数据。
第二篇示例:MySQL数据库中的number类型主要用于存储数值型数据,包括整型和浮点型两种。
整型数据包括TINYINT、SMALLINT、MEDIUMINT、INT和BIGINT,而浮点型数据包括FLOAT和DOUBLE。
在数据库表的设计中,合理地选择number类型可以提高数据库的性能和数据存储效率。
让我们来了解一下MySQL数据库中number类型的具体描述和用法。
1. TINYINT:TINYINT类型用于存储非常小的整数数据,范围在-128到127之间。
它占用1个字节的存储空间,适用于存储布尔类型数据或者只需要记录小整数的场景。
6. FLOAT:FLOAT类型用于存储单精度浮点数数据,范围在-3.402823466E+38到-1.175494351E-38、0和1.175494351E-38到3.402823466E+38之间。
查询数据库表字段类型
![查询数据库表字段类型](https://img.taocdn.com/s3/m/a6894de3294ac850ad02de80d4d8d15abe2300c1.png)
查询数据库表字段类型在进行数据库表设计时,不仅需要确定表的结构和字段名,还需要确定每个字段的数据类型。
数据库字段类型定义了字段可以存储的数据的特定类型,进而限制了将要存储在该字段中的数据的格式和范围。
不同的数据库系统支持不同的字段类型,但是大部分数据库系统都提供了一些常见的基本字段类型和一些更特定的字段类型。
常见的基本字段类型包括:1.字符串类型(String):用于存储字符串或文本数据。
常见的字符串类型包括:- CHAR:固定长度的字符串,最多可以存储255个字符。
- VARCHAR:可变长度的字符串,可以存储最大长度为指定值的字符。
- TEXT:可变长度的字符串,可以存储更大量的字符,一般限制为最长不超过65535个字符。
2.数值类型(Numeric):用于存储数值数据。
常见的数值类型包括:- INT或INTEGER:用于存储整数值,一般占用4个字节。
- FLOAT或REAL:用于存储浮点数值,一般占用4个字节。
- DOUBLE:用于存储双精度浮点数值,一般占用8个字节。
- DECIMAL或NUMERIC:用于存储精确数值,指定精度和小数位数。
3.日期和时间类型(Date and Time):用于存储日期和时间数据。
常见的日期和时间类型包括:- DATE:用于存储日期,格式为YYYY-MM-DD。
- TIME:用于存储时间,格式为HH:MM:SS。
- DATETIME或TIMESTAMP:用于存储日期和时间,格式为YYYY-MM-DD HH:MM:SS。
4.布尔类型(Boolean):用于存储布尔值,表示真或假。
除了上述基本字段类型之外,一些数据库系统还提供了更特定的字段类型,以满足特定的数据存储需求。
例如:1.枚举类型(Enum):用于存储具有限值集合的数据,可以在定义时指定可用的枚举值。
2.集合类型(Set):用于存储多个值的集合,可以在定义时指定可用的集合值。
3.二进制类型(Binary):用于存储二进制数据,如图片、音频或视频。
什么是计算机的数据库举例说明常见的数据库类型及其特点
![什么是计算机的数据库举例说明常见的数据库类型及其特点](https://img.taocdn.com/s3/m/ce28dd0e32687e21af45b307e87101f69e31fbe1.png)
什么是计算机的数据库举例说明常见的数据库类型及其特点数据库是计算机系统中用于存储、管理和组织数据的重要组件。
它可以被看作是一个电子化的信息库,用于存储各种类型的数据,并提供结构化、可靠、高效的数据访问和管理方式。
本文将介绍计算机数据库的概念,举例说明几种常见的数据库类型及其特点。
1. 关系型数据库(RDBMS)关系型数据库是一种使用表格(也称为关系)来表示和存储数据的数据库。
关系型数据库管理系统(RDBMS)是用于管理关系型数据库的软件。
其中最常见的关系型数据库是Oracle、MySQL、SQL Server 和PostgreSQL等。
特点:- 数据以表格(二维结构)的形式存储在关系型数据库中,使用行和列来表示。
- 表格可以定义主键、外键和索引等约束,确保数据的完整性和一致性。
- 支持结构化查询语言(SQL)进行数据查询和操作。
- 具有高度的可扩展性和可靠性,广泛应用于企业级应用和大型系统。
2. 非关系型数据库(NoSQL)非关系型数据库是一种不使用传统的表格结构而使用其他数据模型的数据库。
它们主要用于存储大规模的非结构化或半结构化数据。
常见的非关系型数据库包括MongoDB、Cassandra和Redis等。
特点:- 非关系型数据库使用灵活的数据模型,可以存储各种类型的数据,如文档、键值对、图形等。
- 没有严格的约束,更适合于快速开发和处理大量数据。
- 具有高度的可伸缩性和高并发性能,适用于大数据应用和分布式系统。
3. 对象数据库(OODBMS)对象数据库是一种将面向对象编程(OOP)的概念和数据库的概念相结合的数据库。
它们将对象及其属性作为数据存储单位,支持面向对象的查询和操作。
常见的对象数据库有db4o、Versant等。
特点:- 对象数据库将数据对象直接存储在数据库中,无需转换为其他形式。
- 支持面向对象编程语言的特性,如继承、多态等。
- 可以通过对象引用实现关联和关系,提供更加灵活和高效的数据操作方式。
【Flask】Sqlalchemy常用数据类型
![【Flask】Sqlalchemy常用数据类型](https://img.taocdn.com/s3/m/754a027b7ed5360cba1aa8114431b90d6c8589a7.png)
【Flask】Sqlalchemy常⽤数据类型### SQLAlchemy常⽤数据类型:1. Integer:整形,映射到数据库中是int类型。
2. Float:浮点类型,映射到数据库中是float类型。
他占据的32位。
3. Double:双精度浮点类型,映射到数据库中是double类型,占据64位。
4. String:可变字符类型,映射到数据库中是varchar类型.5. Boolean:布尔类型,映射到数据库中的是tinyint类型。
6. DECIMAL:定点类型。
是专门为了解决浮点类型精度丢失的问题的。
在存储钱相关的字段的时候建议⼤家都使⽤这个数据类型。
并且这个类型使⽤的时候需要传递两个参数,第⼀个参数是⽤来标记这个字段总能能存储多少个数字,第⼆个参数表⽰⼩数点后有多少位。
7. Enum:枚举类型。
指定某个字段只能是枚举中指定的⼏个值,不能为其他值。
在ORM模型中,使⽤Enum来作为枚举8. Date:存储时间,只能存储年⽉⽇。
映射到数据库中是date类型。
在Python代码中,可以使⽤`datetime.date`来指定9. DateTime:存储时间,可以存储年⽉⽇时分秒毫秒等。
映射到数据库中也是datetime类型。
在Python代码中,可以使⽤`datetime.datetime`来指定。
⽰例代码如下:10. Time:存储时间,可以存储时分秒。
映射到数据库中也是time类型。
在Python代码中,可以使⽤`datetime.time`来⾄此那个。
11. Text:存储长字符串。
⼀般可以存储6W多个字符。
如果超出了这个范围,可以使⽤LONGTEXT类型。
映射到数据库中就是text类型。
12. LONGTEXT:长⽂本类型,映射到数据库中是longtext类型。
1# coding:utf-82# Author: liangjun.chen34from datetime import date5from datetime import datetime6from datetime import time78from sqlalchemy import create_engine, Column, Integer, String, Float, Boolean, DECIMAL, Enum, Date, DateTime, Time, Text9from sqlalchemy.dialects.mysql import LONGTEXT1011from sqlalchemy.ext.declarative import declarative_base12from sqlalchemy.orm import sessionmaker1314 HOSTNAME = '127.0.0.1'15 PORT = 330616 DATABASE = 'sqlalchemy_first'17 USERNAME = 'root'18 PASSWORD = '123456'1920 DB_URI = 'mysql+pymysql://{username}:{password}@{host}:{port}/{dbname}?charset=utf8'.format(21 username=USERNAME, password=PASSWORD, host=HOSTNAME, port=PORT, dbname=DATABASE22 )23 engine = create_engine(DB_URI)24 Base = declarative_base(engine)25 Session = sessionmaker(engine)26 session = Session()272829class Artile(Base):30__tablename__ = 'article'31 id = Column(Integer, primary_key=True, autoincrement=True)32 price = Column(Float)33 is_delete = Column(Boolean)34 money = Column(DECIMAL(10, 4))35 language = Column(Enum('python', 'flask'))36 create_date = Column(Date)37 create_datetime = Column(DateTime)38 content = Column(String(100))39 create_time = Column(Time)40 content_text = Column(Text)41 long_text = Column(LONGTEXT)4243 Base.metadata.drop_all()44 Base.metadata.create_all()4546 article = Artile(price=3.1415926, is_delete=True, money=10000.1234, language='flask',47 create_date=date(2018,3,22), create_datetime=datetime(2018,3,22,22,51,00), content='tesxxxx',48 create_time=time(22,57,00), content_text='text', long_text='longtext')49 session.add(article)50 mit()。
数据库中的数据类型详细
![数据库中的数据类型详细](https://img.taocdn.com/s3/m/ca15f64076232f60ddccda38376baf1ffc4fe3df.png)
数据库中的数据类型详细⼀、整数数据类型整数数据类型是最常⽤的数据类型之⼀。
1、INT (INTEGER)INT (或INTEGER)数据类型存储从-2的31次⽅(-2 ,147 ,483 ,648)到2的31次⽅-1 (2 ,147 ,483,647)之间的所有正负整数。
每个INT 类型的数据按4 个字节存储,其中1 位表⽰整数值的正负号,其它31 位表⽰整数值的长度和⼤⼩。
2、SMALLINTSMALLINT 数据类型存储从-2的15次⽅( -32, 768)到2的15次⽅-1( 32 ,767 )之间的所有正负整数。
每个SMALLINT 类型的数据占⽤2 个字节的存储空间,其中1 位表⽰整数值的正负号,其它15 位表⽰整数值的长度和⼤⼩。
3、TINYINTTINYINT数据类型存储从0 到255 之间的所有正整数。
每个TINYINT类型的数据占⽤1 个字节的存储空间。
4、BIGINTBIGINT 数据类型存储从-2^63 (-9 ,223, 372, 036, 854, 775, 807)到2^63-1( 9, 223, 372, 036 ,854 ,775, 807)之间的所有正负整数。
每个BIGINT 类型的数据占⽤8个字节的存储空间。
⼆、浮点数据类型浮点数据类型⽤于存储⼗进制⼩数。
浮点数值的数据在SQL Server 中采⽤上舍⼊(Round up 或称为只⼊不舍)⽅式进⾏存储。
所谓上舍⼊是指,当(且仅当)要舍⼊的数是⼀个⾮零数时,对其保留数字部分的最低有效位上的数值加1 ,并进⾏必要的进位。
若⼀个数是上舍⼊数,其绝对值不会减少。
如:对3.14159265358979 分别进⾏2 位和12位舍⼊,结果为3.15 和3.141592653590。
1、REAL 数据类型REAL数据类型可精确到第7 位⼩数,其范围为从-3.40E -38 到3.40E +38。
每个REAL类型的数据占⽤4 个字节的存储空间。
三个常用的数据库类型
![三个常用的数据库类型](https://img.taocdn.com/s3/m/56eda3215bcfa1c7aa00b52acfc789eb162d9e53.png)
三种常用数据库类型
说起数据库,咱们四川人也得懂点皮毛嘛。
在IT界,数据库那是必不可少的角色,今天就给大家摆一摆三种常用的数据库类型。
第一种嘛,就是关系型数据库,就像咱们四川的火锅,各种食材(数据)在锅里(数据库)头涮,通过锅底的调料(关系)把它们串起来。
这种数据库,数据之间是有关系的,查询、更新、删除都方便得很,典型的代表就是MySQL、Oracle这些,就像咱们四川的火锅店,大街小巷到处都是。
第二种,非关系型数据库,这个就像咱们四川的串串香,每串食材都是独立的,不靠锅底来连接。
这种数据库,数据之间没得啥关系,存储起来更灵活,读写速度也快,特别适合处理大量数据,像Redis、MongoDB这些,就是非关系型数据库的代表,就像咱们四川的串串店,晚上生意好得不得了。
第三种,列式数据库,这个有点新鲜,就像咱们四川的凉粉,每根凉粉都是一条一条的,列式数据库就是按列来存储数据的,查询速度飞快,特别适合处理大量数据且查询需求比较单一的情况。
像HBase这些,就是列式数据库的代表,虽然不像火锅串串那么普遍,但在大数据领域,那可是有一席之地的。
所以说嘛,数据库这东西,就跟咱们四川的美食一样,种类繁多,各有千秋,选对了才能吃得巴适!。
数据库常用数据类型
![数据库常用数据类型](https://img.taocdn.com/s3/m/59144e5132687e21af45b307e87101f69e31fb23.png)
(1) 整数型整数包括bigint、int、smallint和tinyint,从标识符的含义就可以看出,它们的表示数范围逐渐缩小。
l bigint:大整数,数范围为-263 (-9223372036854775808)~263-1 (9223372036854775807) ,其精度为19,小数位数为0,长度为8字节。
l int:整数,数范围为-231 (-2,147,483,648) ~231 - 1 (2,147,483,647) ,其精度为10,小数位数为0,长度为4字节。
l smallint:短整数,数范围为-215 (-32768) ~215 - 1 (32767) ,其精度为5,小数位数为0,长度为2字节。
l tinyint:微短整数,数范围为0~255,长度为1字节,其精度为3,小数位数为0,长度为1字节。
(2) 精确整数型精确整数型数据由整数部分和小数部分构成,其所有的数字都是有效位,能够以完整的精度存储十进制数。
精确整数型包括decimal 和numeric两类。
从功能上说两者完全等价,两者的唯一区别在于decimal不能用于带有identity关键字的列。
声明精确整数型数据的格式是numeric | decimal(p[,s]),其中p为精度,s为小数位数,s的缺省值为0。
例如指定某列为精确整数型,精度为6,小数位数为3,即decimal(6,3),那么若向某记录的该列赋值56.342689时,该列实际存储的是56.3427。
decimal和numeric可存储从-1038 +1 到1038 –1 的固定精度和小数位的数字数据,它们的存储长度随精度变化而变化,最少为5字节,最多为17字节。
l 精度为1~9时,存储字节长度为5;l 精度为10~19时,存储字节长度为9;l 精度为20~28时,存储字节长度为13;l 精度为29~38时,存储字节长度为17。
例如若有声明numeric(8,3),则存储该类型数据需5字节,而若有声明numeric(22,5),则存储该类型数据需13字节。
数据库技术及应用:常见数据类型
![数据库技术及应用:常见数据类型](https://img.taocdn.com/s3/m/84485d5f0b1c59eef8c7b4a7.png)
3.1.2 常见数据类型——数据定长字符型变长字符型文本型char(n1) varchar(n3) text nchar(n2) nvarchar(n4) ntextn1<=8000 n2<=4000 n1<=8000n2<=4000<231-1字符串长度固定字符串长度不固定字符串长度不固定实际值少于定义长度时用空格填充实际值少于定义长度时不用空格填充存储实际字符,但空间至少为2K适用于长度固定的数据适用于长度不固定的数据适用于长文本数据学号、邮政编码、身份证号、电话号码学院名称、姓名、籍贯、课程名称、地址简历、备注、爱好类型占用存储空间表示范围tinyint 1字节0~255 smallint 2字节-32768~32767int/integer 4字节-2147483648~ 2147483647bigint 8字节-9223372036854775808~ 9223372036854775807numeric(p,s) P表示精度S表示小数位数,<=整数位数decimal(p,s) P表示精度S表示小数位数,<=整数位数numeric(10,3) 表示最多存放10位数,且小数占三位decimal(10,3) 表示最多存放10位数,且小数占三位说明:精确数值型所占用的存储空间随精度的增加而增加。
类型占用存储空间表示范围float(n)4字节-3.4E+38~3.4E+381<=n<=24float(n)8字节-1.79E+308~1.79E+308 25<=n<=53real 4字节-3.4E+38~3.4E+38说明:当数据的整数位与小数位很多时,可采用浮点型。
类型占用存储空间表示范围smallmoney 4字节-214748.3648~214748.3647money 8字节-922337203685477.5808~ 922337203685477.5807例如:¥12,347.65类型占用存储空间表示范围smalldatetime 4字节1/1/1950~6/6/2049 datetime 8字节1/1/1753~12/31/9999。
数据库byte类型
![数据库byte类型](https://img.taocdn.com/s3/m/64df420f366baf1ffc4ffe4733687e21af45ff1a.png)
数据库byte类型数据库byte类型是一种常见的数据类型,它通常用于存储二进制数据,例如图像、音频和视频等文件。
在本文中,我们将详细了解byte类型的特点、用途和限制。
一、byte类型的特点1. byte类型是一种固定长度的数据类型,通常为8位(1个字节)或16位(2个字节)。
2. byte类型可以存储整数值,范围从-128到127或从0到255。
在存储二进制数据时,通常使用无符号byte类型。
3. byte类型是一种高效的数据类型,因为它可以直接存储在内存中,并且可以快速读取和写入。
二、byte类型的用途1. 存储二进制数据:byte类型通常用于存储二进制数据,例如图像、音频和视频等文件。
在数据库中,可以使用byte类型的列来存储这些二进制数据。
2. 加密数据:byte类型可以用于存储加密后的数据。
例如,可以使用AES算法对密码进行加密,并将加密后的结果存储在byte类型的列中。
3. 存储布尔值:虽然不是byte类型的主要用途,但在某些情况下,byte类型可以用于存储布尔值。
例如,可以将0表示false,将1表示true。
三、byte类型的限制1. 存储容量有限:由于byte类型的容量有限,它通常只适用于存储小文件或少量数据。
如果需要存储大量数据,则应该考虑使用其他数据类型,例如BLOB或CLOB。
2. 数据转换容易出错:由于byte类型可以存储二进制数据,因此在进行数据转换时,容易出现错误。
例如,如果将一个字符串转换为byte类型,但字符串包含了无法转换为byte类型的字符,则会出现错误。
3. 不适用于文本数据:虽然byte类型可以存储二进制数据,但它不适用于存储文本数据。
如果需要存储文本数据,则应该使用其他数据类型,例如VARCHAR或TEXT。
四、结论byte类型是一种常见的数据类型,通常用于存储二进制数据。
它具有高效、固定长度和范围限制等特点。
但是,由于存储容量有限、数据转换容易出错和不适用于文本数据等限制,应该根据具体情况选择合适的数据类型。
各数据库的数据类型的区别
![各数据库的数据类型的区别](https://img.taocdn.com/s3/m/a62a712ebcd126fff7050bb4.png)
Oracle、MySQL、SQL Server数据库的数据类型的差异1.Oracle数据库的各种数据类型CHAR 定长的字符型数据,长度<=2000字节VARCHAR2 变长的字符型数据,长度<=4000字节N CHAR 用来存储Unicode字符集的定长字符型数据,长度<=1000字节注意:N字打头的是存储Unicode字符集NVARCHAR2 Unicode字符集的变长字符型数据,长度<=1000字节NUMBER 整型或者浮点型数值DATE 日期数据LONG 2GB的变长字符数据RAW 用来存储非结构化数据的变长字符数据,长度<=2000字节LONG RAW 用来存储非结构化数据的变长字符数据,长度<=2GBROWID 用来存储表中列的物理地址的二进制数据,占用固定的10个字节BLOB 4GB的非结构化的二进制数据CLOB 4GB的字符数据NCLOB 4GB的Unicode字符数据BFILE 把非结构化的二进制数据存储在数据库以外的操作系统文件中UROWID 表示任何类型列地址的二进制数据FLOAT 浮点数2.MySQL数据库的各种数据类型CHAR (M) CHAR数据类型用于表示M长度的字符串。
VARCHAR (M) VARCHAR可以保存可变长度的字符串, VARCHAR数据类型所支持的最大长度也是255个字符。
INT (M) [Unsigned] INT数据类型用于保存从- 2147483647 到2147483648范围之内的任意整数数据。
如果用户使用Unsigned选项,则有效数据范围调整为0-4294967295。
FLOAT [(M,D)] FLOAT数据类型用于表示数值较小的浮点数据,可以提供更加准确的数据精度。
其中,M代表浮点数据的长度(即小数点左右数据长度的总和),D表示浮点数据位于小数点右边的数值位数。
DATE DATE数据类型用于保存日期数据,默认格式为YYYY-MM-DD。
数据库常见数据类型
![数据库常见数据类型](https://img.taocdn.com/s3/m/adf50d45571252d380eb6294dd88d0d233d43c1a.png)
数据库常见数据类型
在数据库中,常用的数据类型有以下这些:
1. 整型(INT):用于存储整数值,包括正整数、负整数和零。
2. 浮点型(FLOAT):用于存储带有小数点的数字,通常用于储存货币和精度较高的数字。
3. 字符串(VARCHAR):用于存储文本字符串,如姓名、地址、电子邮件等。
4. 日期时间(DATETIME):用于存储日期和时间,包括年、月、日、小时、分钟和秒。
5. 布尔(BOOLEAN):用于存储两个可能的值,即真和假。
6. 二进制(BLOB):用于存储二进制数据,如图像、视频、音频等。
7. 字符(CHAR):用于存储固定长度的文本字符串,经常用于存储标识符、密码等。
8. 大整数(BIGINT):用于存储非常大的整数,通常比整型范围更广。
9. 小数(DECIMAL):用于存储精度高的小数,通常用于财务和科学计算。
10. 自增长(AUTO_INCREMENT):用于表示一个值的唯一标识符,通常用于主键或序列。
数据库建表字段类型
![数据库建表字段类型](https://img.taocdn.com/s3/m/75e6a5c34bfe04a1b0717fd5360cba1aa8118c8b.png)
数据库建表字段类型在数据库中,建表是一个非常重要的环节,它直接影响着数据存储的质量与效率。
在建表时,不同的字段类型也会对数据的存储与使用产生不同的影响。
本文将介绍常用的数据库建表字段类型,帮助大家更好地理解数据库建表的过程。
1. 整数型 (INTEGER)整数型是最常用的字段类型之一,它可以存储任何整数值,包括正整数、负整数和零。
在数据库中,整数型可以指定不同的长度(bit),如TINYINT、SMALLINT、MEDIUMINT、INT和BIGINT,分别对应不同的取值范围。
2. 浮点型 (FLOAT)浮点型是一种用于存储小数值的字段类型,它适用于需要存储精度较高的数据。
在数据库中,浮点型可以指定不同的精度(decimal),如FLOAT和DOUBLE,分别对应不同的精度范围。
3. 字符型 (CHAR)字符型是一种用于存储字符串的字段类型,它可以存储任何字符,包括字母、数字和特殊字符。
在数据库中,字符型可以指定不同的长度(length),如CHAR和VARCHAR,分别对应固定长度和可变长度的字符串。
4. 日期型 (DATE)日期型是一种用于存储日期和时间的字段类型,它可以存储任何日期和时间值,包括年、月、日、时、分、秒。
在数据库中,日期型可以指定不同的格式,如DATE、DATETIME和TIMESTAMP,分别对应不同的存储格式和范围。
5. 布尔型 (BOOLEAN)布尔型是一种用于存储真假值的字段类型,它只能存储两个值:TRUE和FALSE。
在数据库中,布尔型可以用TINYINT(1)或BIT(1)来表示。
总之,根据需要存储的数据类型和数据精度,我们可以选择不同的字段类型来建立数据库表,以确保数据的存储和使用效率。
常用数据库的数据类型
![常用数据库的数据类型](https://img.taocdn.com/s3/m/792f5993b8d528ea81c758f5f61fb7360b4c2b2d.png)
SQL 数据类型Micro soft Acces s 、MySQL 以及 SQL Serve r 所使用的数据类型和范围。
Micro soft Acces s 数据类型数据类型 描述存储 Text 用于文本或文本与数字的组合。
最多 255 个字符。
MemoMemo 用于更大数量的文本。
最多存储 65,536 个字符。
注释:无法对 memo 字段进行排序。
不过它们是可搜索的。
Byte 允许 0 到 255 的数字。
1 字节 Integ e r 允许介于 -32,768 到 32,767 之间的数字。
2 字节 Long 允许介于 -2,147,483,648 与 2,147,483,647 之间的全部数字 4 字节 Singl e 单精度浮点。
处理大多数小数。
4 字节 Doubl e 双精度浮点。
处理大多数小数。
8 字节 Curre n cy用于货币。
支持 15 位的元,外加 4 位小数。
提示:您可以选择使用哪个国家的货币。
8 字节AutoN u mber AutoN u mber 字段自动为每条记录分配数字,通常从 1 开始。
4 字节 Date/Time 用于日期和时间8 字节 Yes/No逻辑字段,可以显示为 Yes/No 、True/False 或 On/Off 。
在代码中,使用常量 True 和 False (等价于 1 和 0) 注释:Yes/No 字段中不允许 Null 值1 比特Ole Objec t 可以存储图片、音频、视频或其他 BLOBs (Binar y Large OBjec t s) 最多 1GB Hyper l ink 包含指向其他文件的链接,包括网页。
Looku p Wizar d允许你创建一个可从下列列表中进行选择的选项列表。
4 字节MySQL 数据类型在 MySQL 中,有三种主要的类型:文本、数字和日期/时间类型。
数据库技术中的数据字段类型选择(十)
![数据库技术中的数据字段类型选择(十)](https://img.taocdn.com/s3/m/b44a6f5224c52cc58bd63186bceb19e8b8f6ec22.png)
数据字段类型是数据库技术中一个重要的考虑因素。
在设计数据库时,选择适当的数据字段类型可以提高数据存储效率、保证数据完整性,并支持更高级的数据操作。
本文将探讨数据库技术中的数据字段类型选择,并介绍常见的数据字段类型及其使用场景。
一、简介数据字段类型是用来定义数据的存储格式和数据操作规则的。
在数据库中,每个字段都需要指定相应的数据类型。
数据字段类型的选择直接影响到数据库的性能和数据的完整性。
二、字符型数据字段类型1. CHAR:CHAR类型是一种固定长度的字符类型。
它适用于长度固定的字符串,例如国家代码、性别等字段。
由于该字段类型的长度是固定的,存储空间的利用率较高。
2. VARCHAR:VARCHAR类型是一种可变长度的字符类型。
它适用于长度不固定的字符串,例如用户名、地址等字段。
由于该字段类型的长度可变,存储空间的利用率较低,但能够有效地节省存储空间。
3. TEXT:TEXT类型是一种用于存储大文本数据的字符类型。
它适用于存储文章、评论等较大的文本内容。
由于该字段类型的存储空间相对较大,不适合存储较短的字符串。
三、数值型数据字段类型1. INT:INT类型是一种用于存储整数的数据类型。
它适用于存储年龄、数量等整数型数据。
由于该字段类型存储空间较小,能够提高数据库的查询和排序效率。
2. DECIMAL:DECIMAL类型是一种用于存储精度要求较高的数值类型。
它适用于存储货币、价格等需要精确计算的数值。
由于该字段类型可以指定精度和小数位数,能够确保计算结果的准确性。
四、日期和时间型数据字段类型1. DATE:DATE类型是一种用于存储日期的数据类型。
它适用于存储生日、预约日期等只关注日期的数据。
由于该字段类型只存储年、月、日,不包含时间信息,能够提高数据库的存储和查询效率。
2. DATETIME:DATETIME类型是一种用于存储日期和时间的数据类型。
它适用于存储订单创建时间、日志记录时间等需要精确到秒的时间信息。
数据库设计中的数据类型选择
![数据库设计中的数据类型选择](https://img.taocdn.com/s3/m/5063979ecf2f0066f5335a8102d276a2002960f6.png)
数据库设计中的数据类型选择数据库设计是构建规范化数据库的关键阶段之一,而数据类型选择则是其中重要的一环。
数据类型决定了在数据库中存储和操作数据的方式,对系统性能、资源利用和数据完整性都有很大的影响。
在进行数据库设计时,选择适当的数据类型是至关重要的。
本文将探讨数据库设计中的数据类型选择问题,并提供一些指导原则。
一、数据类型的概念与分类在了解数据类型选择的重要性之前,首先需要明确数据类型的概念和分类。
数据类型是指数据库中存储数据的特定格式和属性。
常见的数据类型包括整数、浮点数、字符、日期、布尔值等。
根据不同的数据库管理系统和具体需求,数据类型可以进一步细分。
二、数据类型选择的原则在进行数据类型选择时,应考虑以下几个原则:1. 数据准确性和完整性: 选择适当的数据类型可以确保数据在存储和操作过程中不会出现精度问题或数据丢失。
例如,需要存储小数时应选择浮点数类型,而不是整数类型。
2. 存储空间和性能要求: 不同的数据类型占用的存储空间和处理性能不同。
需要根据实际需求权衡存储空间和性能的需求,选择合适的数据类型。
例如,在存储国家/地区信息时,可以使用字符类型来存储国家/地区名称,而不是使用整数类型。
3. 数据查询和操作需求: 数据类型也会影响到查询和操作的效率。
选择合适的数据类型可以提高查询和操作的性能。
例如,在需要对日期进行排序或比较的情况下,应选择日期类型而不是字符类型。
4. 数据一致性和规范性: 数据类型的选择也应符合数据库设计的一致性和规范性要求。
在设计数据库时,应制定一致的数据类型选择策略,遵循统一的规范。
三、常见的数据类型选择示例下面列举一些常见的数据类型选择示例,以便更好地理解数据类型选择的原则。
1. 整数类型: 用于存储不带小数部分的数字。
常见的整数类型包括TINYINT、SMALLINT、INT和BIGINT。
选择整数类型时,需要根据实际需要确定范围。
2. 浮点数类型: 用于存储带有小数部分的数字。
数据库两位小数数据类型
![数据库两位小数数据类型](https://img.taocdn.com/s3/m/407648a9bdeb19e8b8f67c1cfad6195f312be881.png)
数据库两位小数数据类型在数据库中,浮点数是一种常见的数据类型,它可以存储小数。
一般情况下,浮点数在计算机中是以二进制形式存储,因此在计算过程中可能会出现精度损失的问题。
为了避免这种问题,我们可以使用两位小数数据类型,这种数据类型能够保证数值的精度,并且在存储和计算过程中不会丢失精度。
本文将介绍数据库中常见的两位小数数据类型及其应用场景。
一、DECIMAL类型DECIMAL类型是一种常见的两位小数数据类型,它可以存储精确数值,并且在存储和计算过程中不会出现精度损失。
DECIMAL类型的取值范围比较大,可以存储从-999999999999999.999999到999999999999999.999999的数值,且小数点前最多可以有38位数字。
在创建表格时,可以使用如下语法定义DECIMAL类型:DECIMAL(precision, scale)其中,precision为总位数,scale为小数点后位数。
例如,DECIMAL(10,2)表示可以存储10位数字,其中2位是小数位。
DECIMAL类型通常用于需要精确计算的场景,例如财务、税务等场景。
在这些场景中,需要保证计算结果的精度,并且不允许出现误差。
DECIMAL类型可以确保计算结果的精确性,因此在这些场景中被广泛应用。
二、FLOAT类型FLOAT类型是另一种常见的浮点数数据类型,它可以存储大范围的数值,但是精度比DECIMAL类型低。
在存储和计算过程中,FLOAT类型可能会出现精度损失的问题,但是为了满足大规模存储和计算的需求,FLOAT类型被广泛应用。
在创建表格时,可以使用如下语法定义FLOAT类型:三、DOUBLE类型综上所述,数据库中常见的两位小数数据类型包括DECIMAL类型、FLOAT类型和DOUBLE类型。
这些数据类型在存储和计算过程中具有不同的精度和效率,应根据实际需求选择合适的数据类型。
在保证计算结果精确的前提下,可以尽量采用效率更高的数据类型,提高系统的计算效率。
数据库技术中的数据字段类型选择(九)
![数据库技术中的数据字段类型选择(九)](https://img.taocdn.com/s3/m/0883ade27e192279168884868762caaedd33ba85.png)
数据库技术中的数据字段类型选择引言:在数据库技术中,数据字段类型选择是一项关键性决策。
不同的数据字段类型会直接影响到数据存储、查询、索引和性能等方面。
本文将探讨在数据库设计过程中,如何选择适合的数据字段类型,以优化数据库的性能和效率。
一、字符型字段类型的选择字符型字段是存储文本型数据的一种常见数据类型。
在选择字符型字段类型时,我们需要考虑数据的长度和编码方式。
1. VARCHAR类型:适用于存储长度可变的文本数据,如用户的姓名、地址等。
在设定字段长度时,应根据实际情况合理选择,避免过分浪费空间。
2. CHAR类型:适用于存储长度恒定的文本数据,如国家代码、性别等。
由于长度固定,CHAR类型在存储空间上相对效率较高。
二、数字型字段类型的选择数字型字段用于存储各种数值类型,包括整数、小数和浮点数等。
在选择数字型字段类型时,我们需要根据数据的精度和范围进行考虑。
1. INT类型:适用于存储整数数据,在存储空间和计算效率上相对较高。
根据实际需求,可以选择不同大小的INT类型,如TINYINT、SMALLINT、MEDIUMINT和BIGINT等。
2. DECIMAL和FLOAT类型:适用于存储小数和浮点数数据,DECIMAL用于存储高精度的数值,而FLOAT则适用于更大范围的浮点数。
在选择DECIMAL类型时,需要根据需求设定精度和小数位数,以避免数据精度丢失或浪费存储空间。
三、日期和时间型字段类型的选择日期和时间型字段用于存储日期和时间相关的数据。
在选择日期和时间型字段类型时,需考虑数据的精度和范围。
1. DATE类型:用于存储日期数据,精确到年、月、日。
DATE类型在存储空间上相对较小,在存储和查询性能上具有优势。
2. DATETIME和TIMESTAMP类型:用于存储日期和时间数据,精确到秒级。
DATETIME和TIMESTAMP都支持相同的日期时间范围,但存储的方式略有不同。
DATETIME类型将时间以固定长度存储,而TIMESTAMP类型存储的是从某个固定时间点开始的秒数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(1) 整数型整数包括bigint、int、smallint和tinyint,从标识符的含义就可以看出,它们的表示数范围逐渐缩小。
l bigint:大整数,数范围为-263 (-9223372036854775808)~263-1 (9223372036854775807) ,其精度为19,小数位数为0,长度为8字节。
l int:整数,数范围为-231 (-2,147,483,648) ~231 - 1 (2,147,483,647) ,其精度为10,小数位数为0,长度为4字节。
l smallint:短整数,数范围为-215 (-32768) ~215 - 1 (32767) ,其精度为5,小数位数为0,长度为2字节。
l tinyint:微短整数,数范围为0~255,长度为1字节,其精度为3,小数位数为0,长度为1字节。
(2) 精确整数型精确整数型数据由整数部分和小数部分构成,其所有的数字都是有效位,能够以完整的精度存储十进制数。
精确整数型包括decimal 和numeric两类。
从功能上说两者完全等价,两者的唯一区别在于decimal不能用于带有identity关键字的列。
声明精确整数型数据的格式是numeric | decimal(p[,s]),其中p为精度,s为小数位数,s的缺省值为0。
例如指定某列为精确整数型,精度为6,小数位数为3,即decimal(6,3),那么若向某记录的该列赋值56.342689时,该列实际存储的是56.3427。
decimal和numeric可存储从-1038 +1 到1038 –1 的固定精度和小数位的数字数据,它们的存储长度随精度变化而变化,最少为5字节,最多为17字节。
l 精度为1~9时,存储字节长度为5;l 精度为10~19时,存储字节长度为9;l 精度为20~28时,存储字节长度为13;l 精度为29~38时,存储字节长度为17。
例如若有声明numeric(8,3),则存储该类型数据需5字节,而若有声明numeric(22,5),则存储该类型数据需13字节。
注意:声明精确整数型数据时,其小数位数必须小于精度;在给精确整数型数据赋值时,必须使所赋数据的整数部分位数不大于列的整数部分的长度。
(3) 浮点型浮点型也称近似数值型。
顾名思义,这种类型不能提供精确表示数据的精度,使用这种类型来存储某些数值时,有可能会损失一些精度,所以它可用于处理取值范围非常大且对精确度要求不是十分高的数值量,如一些统计量。
有两种近似数值数据类型:float[(n)]和real,两者通常都使用科学计数法表示数据,即形为:尾数E阶数,如5.6432E20,-2.98E10,1.287659E-9等。
l real:使用4字节存储数据,表数范围为-3.40E + 38 到3.40E + 38,数据精度为7位有效数字。
l float:定义中的n取值范围是1~53,用于指示其精度和存储大小。
当n在1~24之间时,实际上是定义了一个real型数据,存储长度为4字节,精度为7位有效数字;当n在25~53之间时,存储长度为8字节,精度为15位有效数字。
当缺省n时,代表n在25~53之间。
float型数据的数范围为- 1.79E+308 到1.79E+308。
(4) 货币型SQL Server提供了两个专门用于处理货币的数据类型:money和smallmoney,它们用十进制数表示货币值。
l money:数据的数范围为-263 (-922337203685477.5808)~263-1 (922337203685477.5807) ,其精度为19,小数位数为4,长度为8字节。
money 的数的范围与bigint相同,不同的只是money型有4位小数,实际上,money 就是按照整数进行运算的,只是将小数点固定在末4位。
l smallmoney:数范围为–231 (-2,147,48.3648) ~231 - 1 (2,147,48.3647) ,其精度为10,小数位数为4,长度为4字节。
可见smallmoney与int的关系就如同money与bigint的关系。
当向表中插入money或smallmoney类型的值时,必须在数据前面加上货币表示符号($),并且数据中间不能有逗号(,);若货币值为负数,需要在符号$的后面加上负号(-)。
例如:$15000.32,$680,$-20000.9088都是正确的货币数据表示形式。
(5) 位型SQL Server中的位(bit)型数据相当于其他语言中的逻辑型数据,它只存储0和1,长度为一个字节。
但要注意,SQL Server对表中bit类型列的存储作了优化:如果一个表中有不多于8 个的bit列,这些列将作为一个字节存储,如果表中有9 到16 个bit 列,这些列将作为两个字节存储,更多列的情况依此类推。
当为bit类型数据赋0时,其值为0,而赋非0(如100)时,其值为1。
若表中某列为bit类型数据,那么该列不允许为空值(有关空值概念本节稍后即做介绍),并且不允许对其建立索引。
(6) 字符型字符型数据用于存储字符串,字符串中可包括字母、数字和其它特殊符号(如#、@、&等等)。
在输入字符串时,需将串中的符号用单引号或双引号括起来,如’abc’、”Abc<Cde”。
SQL Server字符型包括两类:固定长度(char) 或可变长度(varchar) 字符数据类型。
l char[(n)]定长字符数据类型,其中n定义字符型数据的长度,n在1到8000之间,缺省为1。
当表中的列定义为char(n)类型时,若实际要存储的串长度不足n时,则在串的尾部添加空格以达到长度n,所以char(n)的长度为n。
例如某列的数据类型为char(20),而输入的字符串为”ahjm1922”,则存储的是字符ahjm1922和12个空格。
若输入的字符个数超出了n,则超出的部分被截断。
l varchar[(n)]变长字符数据类型,其中n的规定与定长字符型char中n完全相同,但这里n 表示的是字符串可达到的最大长度。
varchar(n)的长度为输入的字符串的实际字符个数,而不一定是n。
例如,表中某列的数据类型为varchar(100),而输入的字符串为”ahjm1922”,则存储的就是字符ahjm1922,其长度为8字节。
当列中的字符数据值长度接近一致时,例如姓名,此时可使用char;而当列中的数据值长度显著不同时,使用varchar较为恰当,可以节省存储空间。
(7) Unicode字符型Unicode是“统一字符编码标准”,用于支持国际上非英语语种的字符数据的存储和处理。
SQL Server的Unicode字符型可以存储Unicode标准字符集定义的各种字符。
Unicode字符型包括nchar[(n)]和nvarchar[(n)]两类。
nchar是固定长度Unicode 数据的数据类型,nvarchar 是可变长度Unicode 数据的数据类型,二者均使用UNICODE UCS-2 字符集。
l nchar[(n)]:nchar[(n)]为包含n个字符的固定长度Unicode 字符型数据,n 的值在1 与4,000 之间,缺省为1。
长度为2n字节。
若输入的字符串长度不足n,将以空白字符补足。
l nvarchar[(n)]:nvarchar[(n)]为最多包含n个字符的可变长度Unicode 字符型数据,n 的值在1 与4,000之间,缺省为1。
长度是所输入字符个数的两倍。
实际上,nchar、nvarchar与char、varchar的使用非常相似,只是字符集不同(前者使用Unicode字符集,后者使用ASCII字符集)。
(8) 文本型当需要存储大量的字符数据,如较长的备注、日志信息等等,字符型数据的最长8000个字符的限制可能使它们不能满足这种应用需求,此时可使用文本型数据。
文本型包括text和ntext两类,分别对应ASCII字符和Unicode字符。
text类型可以表示最大长度为231-1 (2,147,483,647) 个字符,其数据的存储长度为实际字符数个字节。
ntext可表示最大长度为230 - 1 (1,073,741,823) 个Unicode字符,其数据的存储长度是实际字符个数的两倍(以字节为单位)。
(9) 二进制型二进制数据类型表示的是位数据流,包括binary(固定长度)和varbinary(可变长度)两种。
l binary [(n) ]:固定长度的n个字节二进制数据。
n取值范围为1 到8,000,缺省为1。
binary(n)数据的存储长度为n+4 字节。
若输入的数据长度小于n,则不足部分用0填充;若输入的数据长度大于n,则多余部分被截断。
输入二进制值时,在数据前面要加上0x,可以用的数字符号为0—9、A—F(字母大小写均可)。
因此,二进制数据有时也被称为十六进制数据。
例如0xFF、0x12A0分别表示值FF和12A0。
因为每字节的数最大为FF,故在“0x”格式的数据每两位占1个字节。
l varbinary [(n) ]:n个字节变长二进制数据。
n取值范围为1 到8,000,缺省为1。
varbinary(n)数据的存储长度为实际输入数据长度+4个字节。
(10) 日期时间类型日期时间类型数据用于存储日期和时间信息,包括datetime和smalldatetime两类。
l datetime:datetime类型可表示的日期范围从1753 年1 月1 日到9999 年12 月31 日的日期和时间数据,精确度为百分之三秒(3.33 毫秒或0.00333 秒),例如1到3毫秒的值都表示为0毫秒,4到6毫秒的值都表示为4毫秒。
datetime类型数据长度为8字节,日期和时间分别使用4个字节存储。
前4 字节用于存储datetime类型数据中距1900 年1 月 1 日的天数,为正数表示日期在1900年1月1日之后,为负数则表示日期在1900年1月1日之前。
后4个字节用于存储datetime类型数据中距12:00(24小时制)的毫秒数。
用户以字符串形式输入datetime类型数据,系统也以字符串形式输出datetime 类型数据,将用户输入到系统以及系统输出的datetime类型数据的字符串形式称为datetime类型数据的“外部形式”,而将datetime在系统内的存储形式称为“内部形式”,SQL Server负责datetime类型数据的两种表现形式之间的转换,包括合法性检查。
用户给出datetime类型数据值时,日期部分和时间部分分别给出。
日期部分的表示形式常用的格式如下:年月日2001 Jan 20、2001 Janary 20年日月2001 20 Jan月日[,]年Jan 20 2001、Jan 20,2001、Jan 20,01月年日Jan 2001 20日月[,]年20 Jan 2001、20 Jan,2001日年月20 2001 Jan年(4位数) 2001表示2001年1月1日年月日20010120、010120月/日/年01/20/01、1/20/01、01/20/2001、1/20/2001月-日-年01-20-01、1-20-01、01-20-2001、1-20-2001月.日.年01.20.01、1.20.01、01.20.2001、1.20.2001说明:年可用4位或2位表示,月和日可用1位或2位表示。