mysql 列类型以及属性特点

整形列:

一个字节有8个位,例如:int 类型的列存入数字1,00000000 00000000 00000000 00000001它就在最低位置上存入一个1,由此可见是极大的浪费资源,所以在建立列类型的时候,依实际情况而定。

整型列的可选属性有:

unsigned 非负

zerofill 零填充 (M)M表示固定宽度,它主要用于学号编码等,可以用0填至固定宽度。注意:有零填充的列数据库默认为unsigned,即非负。

例如:存入当前列数字1,固定宽度设置5,则存入数据库的数据显示为00001

另一种情况如下:

例如:如果没有零填充单纯的int(x)这种格式,x表示的是期望的宽度,(如 INT(4))。这个可选的宽度规格说明是用于在数值显示时,对某些值的宽度短于该列宽度的值进行左填补显示的,而不是为了限制在该列中存储值的宽度,也不是为了限制那些超过该列指定宽度的值的可被显示的数字位数,如果在一个整型列中存储一个超过显示宽度的更大值时,当 MySQL 为某些复杂的联结(join)生成临时表时,你可能会遇到问题,因为在这种情况下,MySQL 信任地认为所有的值均适合原始的列宽度。

浮点列和定点列以及它们的区别:(都是存小数的)

float(M,D)两个参数,M表示小数的总位数,D小数点后是几位,例如:float(5,2)最大存入999.99,最小存入-999.99

double (M,D)与float的区别是范围比float大

decimal 与float/double的区别主要是有精度损失,decimal更精确。decimal适合对数据要求比较严格的时候使用,比如涉及到钱。

字符型列:M限制的是字符

char(M) 定长  M取值范围0~255

varchar(M)不定长0~65,535

一般开发过程中,M比较短果断选择char,char执行速度快。

text 文本存储内容较大 其他文本类型可查看mysql手册,blob不需要考虑字符集存二进制时使用。

enum 是定义好值,也就是取值范围。例如:性别。

set 集合型 可以选其中的一个或多个。

日期时间类型列:

year

date

time

datetime

一般存入数据库用的是unigx时间戳。

存储引擎区别:

未完待续~~~~~

声地

时间: 2024-10-16 03:10:32

mysql 列类型以及属性特点的相关文章

MySQL服务 - MySQL列类型、SQL模式、数据字典

一.MySQL列类型的作用: 列类型可以简单理解为用来对用户往列种存储数据时做某种范围"限定",它可以定义数据的有效值(字符.数字等).所能占据的最大存储空间.字符长度(定长或变长).是否能够被索引.如何被索引及如何排序等.在关系型数据库系统中,为了实现数据的易于管理,必须为表字段(列)指定对应的列类型.MySQL的列类型可以分为4类:字符型.数值型.日期及时间型.自有类型. 1.字符型: 字符型限定值只能为字符,MySQL的字符类型如下: 类型 最大字符长度 名称及特性 char 2

一些列类型还有属性

列类型 数值型 int tinyint 1字节 -128 127 smallint 2字节 mediumint 3字节 int 4字节 bigint 8字节 unsigned 表示无符号位 小数型 float 4字节 38 double 8字节 308 decimal货币型 decimal(m,d) md最大65 d最大是30 整数35 字符串 char() 默认是1,最大取值255 varchar 最大值是65535个字符 实际能存储的字符的个数: 1.字符集, 2.MySQL一条记录长度65

Mysql列类型

数值型 整型: tinyint:微小的列类型,1个字节,默认有符号,存储范围:-128--127 可选属性:tingyint(M) unsigned zerofill M:宽度(在0填充(zerofill)时才有效),只是显示效果,不影响实际数据的存储范围;unsigned:无符号类型 注意:如果某列是zerofill,那么则是unsigned. smallint:2个字节 mediumint:3个字节 int:4个字节 bigint:8个字节 举例: 创建一个表: 1 create table

mysql列类型选择

比如年龄这个字段可以使用  1990-03-15  也可以用  19900315表示在列类型上可以选择 char 和 int:如果一个字段可以选择多种类型,尽量选择一个更快的类型:字段类型优先级   整型>date,time>char,varchar>blob整型,time运算快,节省空间char/varchar要考虑字符集的转换与排序的校对集,速度慢blob无法使用内存临时表enum类型 内部是用整型来存储的,所以速度也是跟int一样的,但是需要注意,如果enum存储的字符串和 cha

06、MySQL—列类型

1.整数类型 I.有符号整型 (1) Tinyint:单字节整形,系统采用一个字节来保存的整形:一个字节 = 8位,最大能表示的数值是0-255. (2) Smallint:双字节整形,系统采用两个字节来保存的整形:能表示0-65535之间 (3) Mediumint:三字节整形,采用三个字节来保存数据 (4) Int:整形(标准整形),采用四个字节来保存数据 (5) Bigint:大整形,采用八个字节来保存数据. ① 创建数据表 ② 插入合理数据 ③ 插入错误数据(超出对应的数据范围) 错误原

MySQL 常用列类型

日期和时间类型为DATETIME.DATE.TIMESTAMP.TIME和YEAR. 注意:在MySQL中,日期时间值使用单引号引起来. 相当于Java中Date,Calender. 最常用的整数类型: MySQL列类型 Java数据类型 ------------------------------------------------------- INT/INTEGER: int/Integer BIGINT: long/Long -------------------------------

列类型概述

数据库中的每个表都是由一个或多个列构成的.可以用 CREATE TABLE 语句创建一个表,创建表时要为每列指定一个类型.列的类型与数据类型相对应,但是比数据类型更为具体,用列类型描述表列可能包含的值的种类以及范围,列的值必须符合规定,不能包含对应的数据类型所允许的所有值.例如,CHAR(16)就规定了存储的字符串值必须是16位.当然不是你必须存储16个字符,而是指列在表中要占16个字符的宽度的. MySQL的列类型是一种手段,通过这种手段可以描述一个表列包含什么类型的值,这又决定了 MySQL

DJango一对一查询,ORM 列类型及列参数

一对一查询 表的创建 # 通过 OneToOneField 创建一对一的关系 from django.db import models # Create your models here. class StaffInfo(models.Model): name = models.CharField(max_length=32, null=True) age = models.CharField(max_length=32, null=True) class Salary(models.Model

mysql之数据表列类型和列约束一

mysql数据表在定义列时,需要确定列的数据类型,以及列的相关属性或是说约束,那么mysql的列类型大致可分为如下: 列类型可分为如下: 1.数值类型 又分为整数和小数 2.时间和日期类型 3.字符类型 稍微有C基础的同学应该不是很陌生,这里呢我不会讲解太多,稍微解释一下就行. 整数部分 整数部分要注意的地方就是字节以及有符号和无符号的区别 我们知晓1byte=8bit 那么2的8次方就是0-255之间 有进制转换的同学应该知道了,那么有符号和无符号是指他需要1位来标识正负数,所以要减去1位,自