首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

mysql 知识总结

数据类型属性not null,非default,默认值unsigned,无符号auto_increment,自增,适用于整型。...可字段可能导致问题count数据丢失,count(*)和count(可字段)结果不一样,前者是推荐用法。select数据丢失,对可字段进行非等于比较查询NULL数据丢失。...指针异常,sum(可字段)统计不存在数据,结果NULL而非0。增加查询难度,当需要进行条件比较需考虑NULL值,增加is not null判断条件。...对于删除和修改,除了原记录外还记录用于 MVCC 字段。事务快照读,会生成一个读视图,基于回滚日志生成。查询优化减少 select 字段数量,避免使用复杂查询。使用索引。...水平分表定义:将一张表数据按行拆分到多张表。何时需要水平分表单表数据量超过 1KW ,B+树可能超过3层导致查询IO次数过多性能下降。一般,单表数据量超过500W 需要考虑分表。

12910

MySQL(数据类型和完整约束)

但是由于浮点数容易产生误差,因此对精确度要求比较高,建议使用DECIMAL来存储。DECIMALMySQL是以字符串存储用于定义货币等对精确度要求较高数据。...DECIMALMySQL是以字符串存储。在数据迁移,float(M,D)是非标准SQL定义,数据库迁移可能会出现问题,最好不要这样使用。...完整约束 约束条件与数据类型宽度一样,都是可选参数 作用:用于保证数据完整性和一致性 分类及详解 PRIMARY KEY (PK) 标识该字段该表主键,可以唯一标识记录 FOREIGN...KEY (FK) 标识该字段该表外键 NOT NULL 标识该字段不能为 UNIQUE KEY (UK) 标识该字段值是唯一 AUTO_INCREMENT 标识该字段值自动增长...是否允许,默认NULL,可设置NOT NULL字段不允许,必须赋值 2.

91820
您找到你想要的搜索结果了吗?
是的
没有找到

mysql字段主键_sql改变列数据类型

MySQL数据类型 (1)数值类型 1、整数型 2、浮点型 3、定点型 (2)日期时间类型 (3)字符串类型 MySQL字段属性 1、\不为值:NULL、NOT NULL 2、主键:primary...float和double不指定精度,默认会按照实际精度来显示,而DECIMAL不指定精度,默认整数10,小数0。...L+3 中等长度文本数据 longtext L+4 极大文本数据 不要轻易使用最大限度来存储字符串,因为涉及记录长度问题 : MySQL规定任何一条数据最长不能超过65535个字节 如果有任何一个字段允许...\不为值:NULL、NOT NULL 字段数据默认情况下是允许,比如说一条人信息记录可以没有邮箱(或许有些人考虑用“空字符串”来代表),我们允许可以不填入数据字段可以设置null;但比如说某些必填数据...唯一键可以约束字段,使得字段数据不能重复 如果唯一键同时也有not null,并且表没有主键的话,desc查看表结构中会显示成主键 如果唯一键也不允许,那么功能与主键相同 唯一键定义方法可以参考主键

2.5K20

MySQL学习3_数据类型字段及运算符

本篇博文中主要是介绍MySQL数据库数据类型字段、运算符相关知识 数据类型 MySQL数据库主要数据类型有四种: 数值类型 浮点型 字符串类型 日期时间类型 数值类型 一般情况下:用int就可以...超过了最大值,以最大值为准 image.png 浮点类型 float(m,d):单精度,8位精度;m表示总个数,d表示小数位 double(m,d):精度,16位精度;m表示总个数,d表示小数位...特点:存取速度慢,节省空间 text:主要是用于存储文本信息 函数 作用 所占字符 length 返回字符串所占字节数 汉字占3个; 数字和字母占1个字符 char_length 返回字符串所占字符数...汉字、数字、字母都是一个字符 image.png 日期时间类型 建议使用int存储时间戳(10位数字)形式 image.png 字段名修饰 字段指的是表第一行即列属性,用column表示...常用来修饰字段有: image.png 修饰语 作用 unsigned 无符号 auto_increment 自增 default 默认值 comment 字段解释说明 not null null

77010

MySQL之库表操作详述

; 修改数据库 alter database db1 charset utf8;    #只能修改库编码格式 二、表操作   1,存储引擎   存储引擎就是表类型,MySQL根据不同存储引擎会有不同处理机制...1.1,MySQL一个整个工作流程   1.2,存储引擎分类   cmd输入show engines可以查看所有的引擎,输入show variables like 'storage_engine...default now()); # 需要指定传入,默认取当前时间 create table t2(x timestamp); # 无需任何设置,情况下自动传入当前时间   3.4,字符串类型...  4.1分类 PRIMARY KEY (PK)    标识该字段该表主键,可以唯一标识记录 FOREIGN KEY (FK)    标识该字段该表外键 NOT NULL    标识该字段不能为...create table t1(id int unsigned not null default 1) #表示id字段无符号,不可以为,默认值1 create table t1(id int unique

67310

MySQL笔记

简单说,关系型数据库是由多张能互相连接表组成数据库 优点: 都是使用表结构,格式一致,易于维护 使用通用 SQL 语言操作,使用方便,可用于复杂查询 数据存储磁盘,安全 缺点: 读写性能比较差...因为建立关系模型上,就要遵循某些规则,比如数据字段值即使仍要分配空间 固定表结构,灵活度较低 非关系型数据库 非关系型数据库又被称为NoSQL(Not Only SQL ),意为不仅仅是 SQL...整数类型 整数类型又称数值型数据,数值型数据类型主要用来存储数字 MySQL 提供了多种数值型数据类型,不同数据类型提供不同取值范围,可以存储值范围越大,所需存储空间也会越大 ?...值不能为null 创建表添加约束 create table 表名( 字段 类型 not null ); 创建表完后,添加非约束 alter table 表名 modify 字段...类型 not null 删除字段约束 alter table 表名 modify 字段类型 唯一约束:unique,值不能重复 注意 唯一约束可以有null值,但是只能有一条记录

97510

MySQL 数据类型

学会自定义表每一个字段(列)数据类型,对学习SQL数据库以及性能调优有着很大帮助! 数据类型是啥?...double(m,d) 精度浮点型16位精度(8字节)m总个数,d小数位 decimal(m,d) 定点数总个数m<38, d小数位 设一个字段定义float(5,2),如果插入一个数123.45678...浮点型在数据库存放是近似值,而定点类型在数据库存放是精确值,一般用来计算或存储货币金额。如果确定数据长度以及小数点位数则采用定点数据类型。...注意日期格式,data类型分隔符"-",time类型分隔符":" 数据类型附加属性 设计数据表字段属性时候通常会在数据类型后加一些默认值 例: char(6) not null 定义了...[字段名] 数据类型[字符串] (字符长度小于6) ,插入数据 [不能为] MySQL关键字 含义 NULL 数据列可包含NULL值 NOT NULL 数据列不允许包含NULL值 DEFAULT

1.8K20

python第十二周:MySql

它们最大长度和是否尾部空格被保留等方面也不同。存储或检索过程不进行大小写转换。...*NUll(值),即是否允许这个字段,若不允许则设置not null。...例如:向学校表插入数据 ? ? 注:若字段设置,则必须这个字段赋值,否则报错 #从数据表查询数据 格式: column_name,column_name....           ...#MySQL null值处理 处理当提供查询条件nullMySQL提供了三大运算符 名称 描述 IS NULL 当列NULL,返回true IS NOT NULL 当列值不是NULL...,返回true 比较操作符,当比较两个值null返回true MySQLNULL值于任何其他值比较(即使是NULL)永远返回false #MySQL联合查询 描述:MySQL UNION

1.3K30

MYSQL(基本篇)——一篇文章带你走进MYSQL奇妙世界

E-308,1.7976931348623157 E+308) 精度浮点数值 精度浮点数值 DECIMAL 依赖于M(精度)和D(标度)值 依赖于M(精度)和D(标度)值 小数值(精确定点数...管理用户: 管理用户主要是针对用户操作,我们分为四小部分讲解: 查询用户: # 我们MYSQL存在mysql数据库,在库存在user表,我们用户都存储在里面 USE mysql; SELECT...否则返回default默认值(可存在多个WHEN THEN) 约束 概念: 约束是作用于字段规则,用来限制存储数据 目的: 保证数据库数据正确,有效性和完整性 约束类型 约束...描述 关键字 非约束 限制该字段数据不能为NULL NOT NULL 唯一约束 保证该字段所有数据均为唯一 UNIQUE 主键约束 主键是一行数据唯一标识,要求非且唯一 PRIMARY KEY...SET NULL 当在父表删除对应记录,首先检查该记录是否有对应外键,如果有则设置子表 该外键值null(这就要求该外键允许取null)。

1.6K40

数据库之表操作

大家好,又见面了,我是你们朋友全栈君。 什么是表 表(TABLE) 是一种结构化文件,可用来存储某种特定类型数据。表一条记录有对应标题,标题 称之为 表字段。...+1 注意:自增长只能添加在主键或者唯一索引字段上 primary key :表示主键(唯一且不为) engine =innodb :表示指定当前表存储引擎 default charset utf8...m最大值65,d最大值30。 特别的:对于精确数值计算需要用此类型 decaimal能够存储精确值原因在于其内部按照字符串存储。...varchar(m) varchar 数据类型用于变长字符串,可以包含最多达65535个字符(理论上可以,但是实际上超出21845长度后,mysql会自动帮您转换数据类型文本类型)...因此,用户设计数据库应当综合考虑各方面的因素,以求达到最佳平衡 text text数据类型用于保存变长大字符串,可以最多到65535

42120

考前复习必备MySQL数据库(关系型数据库管理系统)

每个数据库都有一个或多个不同api用于创建,访问,管理,搜索,复制所保存数据。 将数据存储文件,但是文件读写数据速度相对较慢。 术语 数据库是一些关联表集合。 数据表是数据矩阵。...> MySQL 字段属性应该尽量设置 NOT NULL 首先,考虑值“”和null概念: 值是不占用空间 mysqlnull其实是占用空间 MySQL删除数据表 语法,删除mysql数据表语法...: float double 定点数类型: decimal 整数类型划分是根据存储空间大小和表示范围大小来划分 浮点类型是用来表示实数一种方法,根据位数和精度,浮点类型分单精浮点数(8位精度)和精浮点数...,其取值范围0到255,当保存char值右边填充空格以达到指定长度。...当检索到char值,其尾部空格会被删除,所以存储,一般字符串右边不能有空格。如果字符串右边有空格,查询出来后会被删除。

5.9K10

SQL 与 MySQL 基础

---- 以下数据类型用于字符串存储: CHAR(n):可以存储任意字符串,但是是固定长度n,如果插入长度小于定义长度,则用空格填充。...以下数据类型用于存储数字: SMALLINT:用于存储整数,范围在 (-32768,32767); INT:用于存储一般整数,范围在 (-2147483648,2147483647); BIGINT...:用于存储大型整数,范围在 (-9,223,372,036,854,775,808,9,223,372,036,854,775,807); FLOAT:用于存储精度小数; DOUBLE:用于存储精度小数...例如: MySQL 给 Course 表增加一列,字段名为 Ctype(课程类型),类型 CHAR,长度10,允许值: ALTER TABLE Course ADD Ctype CHAR... MySQL ,外连接查询用于联合多个表格进行查询,外连接查询有以下三种方式: INNER JOIN(内连接,或等值连接):获取两个表字段匹配关系记录,即返回两个表满足条件交集部分。

1.8K20

初识MySQL

服务名(例如:mysql80)(windows服务管理员权限打开cmd命令提示符里启动服务命令) net stop 服务名(例如:mysql80) :停止服务 net start 服务名(例如:mysql80...) 用来操作数据库中所包含数据 INSERT UPDATE DELETE DDL (数据定义语言) 用于创建和删除数据库对象等操作 CREATE DROP ALTER DQL (数据查询语言) 用来对数据库数据进行查询...精度浮点数 ±2.2250738585072014e -308 8字节 DECIMAL 字符串形式浮点数(用于涉及到金钱计算,不会丢失精度) Decimal(M,D) M+2个字节 (1) UNSIGNED...多行注释:/*……*/ 20.字段约束及属性 名称 关键字 说明 非约束 NOT NULL 字段不允许 默认约束 DEFAULT 赋予某字段默认值 唯一约束 UNIQUE KEY(UK) 设置字段值是唯一... 允许,但只能有一个值 主键约束 PRIMARY KEY(PK) 设置该字段主键 可唯一标识该表记录 外键约束 FOREIGN KEY(FK) 用于两表之间建立关系,  需要指定引用主表哪一字段

77610

MySQL学习笔记:数据类型

MySQL数据类型,包括数值类型、日期和时间类型、字符串类型等。 1. 整数整数类型用于存储整数值,包括TINYINT、SMALLINT、MEDIUMINT、INT和BIGINT。...位 double 8个字节 -1.8E308 ~ 1.8E308精度浮点数,精确到小数点后15位除了float和double外,MySQL还有一种浮点类型 -- DECIMAL(十进制),用于存储精确小数值...与其他浮点数类型相比,DECIMAL类型存储和计算过程不会引入浮点误差,因此更适合用于存储货币、金融数据等需要精确值场景。...这意味着该字段可以存储最大值99999999.99,最小值0.01。当向DECIMAL类型字段插入数据,需要注意以下几点:如果插入数值超出了精度和小数位数限制,MySQL会报错。...如果插入数值NULL,则该字段NULL。如果插入数值空字符串(''),则该字段0。查询DECIMAL类型字段,可以使用四舍五入函数(ROUND())来调整小数位数。

24530

Django model 层之Models与Mysql数据库小结

如果设置null=True,保存数据到数据库,把“值”存储NULL。...默认null=False。 blank 如果设置blank=True, 允许Field值,字符型字段CharField和TextField是用空字符串来存储。...null 是针对数据库而言,如果 null=True, 表示数据库字段可以为,那么新建一个model对象时候是不会报错!!...参数值说明:该值默认为False,设置True则表示允许字段null,值将被存储NULL blank参数值说明:该值默认为False,设置True则表示允许字段值 on_delete参数值说明...SET_NULL 删除被参照表某条表记录,设置参照表,同待删除记录存在外键关联记录外键列值null。当且仅当设置了null=True选项可用。

2.2K20

Mysql基础操作及增删改查

Memory表数据,直接清空表数据可以直接释放内存,或直接删除表 Mysql常见数据类型 Mysql数据库管理系统,可以通过存储引擎来决定表类型,同时,Mysql数据库管理系统也提供了数据类型决定表存储数据类型...datetime和timestamp类型 都用于存储包含当前日期和时间时间戳 如果字段没有值或者是timestamp会使用当前系统时间作为他时间戳,而datetime只显示出NULL。...为了保证这些数据存放到数据库,不会出现类型错误而导致以后影响使用,创建表,必须对每个字段指定要存放数据数据类型。...# 是否可null表示,并不是字符串类型 not null # 不可添加数据必须给值 null # 可(这是非主键默认属性) 主键 # 外键,一个特殊索引,用于关联两个表...父子表建立外键字段数据类型需要一致 # 2. 关联父表,父表字段需要为父表 # 3. 如果父表联合主键需要从第一个字段开始关联 # 4. 书写问题 # 5.

1.8K50

Mysql入门(二)

FLOAT 数值类型用于表示单精度浮点数值,而 DOUBLE 数值类型用于表示精度浮点数值。...对于小数点后面的位数超过允许范围值,MySQL 会自动将它四舍五入最接近它值,再插入它。 DECIMAL 数据类型用于精度要求非常高计算,这种类型允许指定数值精度和计数方法作为选择参数。...大小修饰符不用于各种 BLOB 和 TEXT 子类型。比指定类型支持最大范围大值将被自动截短。 时间类型 处理日期和时间类型MySQL 带有 5 个不同数据类型可供选择。...处理相互排拆数据容易让人理解,比如人类性别。ENUM 类型字段可以从集合取得一个值或使用 null 值,除此之外输入将会使 MySQL 在这个字段插入一个空字符串。...,当日热门,生日多少天等等逻辑 不要使用null 为什么这么说呢,因为MYSQLNULL字段索引优化不佳,增加更多计算难度,同时保存与处理NULL类形,也会做更多工作,所以从效率上来说,不建议用过多

86320

mysql密码字段类型_MySQL 字段类型

FLOAT 数值类型用于表示单精度浮点数值,而 DOUBLE 数值类型用于表示精度浮点数值。...对于小数点后面的位数超过允许范围值,MySQL 会自动将它四舍五入最接近它值,再插入它。 DECIMAL 数据类型用于精度要求非常高计算,这种类型允许指定数值精度和计数方法作为选择参数。...大小修饰符不用于各种 BLOB 和 TEXT 子类型。比指定类型支持最大范围大值将被自动截短。 时间类型 处理日期和时间类型MySQL 带有 5 个不同数据类型可供选择。...处理相互排拆数据容易让人理解,比如人类性别。ENUM 类型字段可以从集合取得一个值或使用 null 值,除此之外输入将会使 MySQL 在这个字段插入一个空字符串。...,当日热门,生日多少天等等逻辑 不要使用null 为什么这么说呢,因为MYSQLNULL字段索引优化不佳,增加更多计算难度,同时保存与处理NULL类形,也会做更多工作,所以从效率上来说,不建议用过多

14.4K20

MySQL文档阅读(一)-数字类型

数据类型描述遵循如下约定: M表示整数类型最大显示宽度值;对于浮点数和固定长度数据类型,M表示数字MySQL存储长度;对于字符串类型,M表示字符串最大长度。...当业务需求(例如涉及金钱数据)要求在数据库存储精确数值,需要使用这些类型。MySQLNUMERIC也实现为DECIMAL,因此后续针对DECIMAL叙述也适用于NUMERIC。...MySQL使用4个字节表示单精度值、使用8个字节表示精度值。对于FLOAT类型,SQL标准规定一份可选精度规范,MySQL也支持这种可选精度规范,但是精度值仅仅用于决定存储空间大小。...单精度FLOAT类型表示4个字节;24-53精度则需要精度DOUBLE类型表示。...如果要达到“插入NULL值产生自增值”效果,需要将对应AUTO_INCREMENT列设置NOT NULL。如果该列设置NULL(可),那么插入NULL时候就会直接存储NULL

1.3K10

MySQL 给你问懵了?50 道 MySQL 高频面试题详解来了

,表大小不受操作系统控制,一个表可能分布多个文件里),也有可能为多个(设置独立表,表大小受操作系统文件大小限制,一般 2G),受操作系统文件大小限制; (5)主键索引采用聚集索引(索引数据域存储数据文件本身...他们被用于保存值,该值准确精度是极其重要值,例如与金钱有关数据。当声明一个类是这些类型之一精度和规模能被(并且通常是)指定。...34、字段选择合适得数据类型 字段类型优先级: 整形>date,time>enum,char>varchar>blob,text 优先考虑数字类型,其次是日期或者二进制类型,最后是字符串类型,同级别得数据类型...(2)域完整性:是指表列必须满足某种特定数据类型约束,其中约束又包括取值范围、精度等规定。...主键、外键和索引区别 定义: 主键——唯一标识一条记录,不能有重复,不允许 外键——表外键是另一表主键, 外键可以有重复, 可以是值 索引——该字段没有重复值,但可以有一个值 作用:

2.6K11
领券