Mysql数据库 2.SQL语言 数据类型与字段约束

Mysql数据类型

数据类型:指的是数据表中的列文件支持存放的数据类型

1.数值类型

Mysql当中有多种数据类型可以存放数值,不同的类型存放的数值的范围或者形式是不同的

注:前三种数字类型我们在实际研发中用的很少,一般整数类型我们使用int/integer ,浮点数类型一般使用double

2.字符串类型

存储字符序列的类型

注意:在数据中存储图片或视频等内容,一般存储文件在服务器上的路径,当然如果要存储就需要将图片等数据转成二进制进行存储,所以blob类型是可以存储所有类型的,前提是需要转换成二进制,所以使用很少

longtext类型一般用于varchar类型存储不下的时候

常用类型是char和varchar

3.日期类型

在Mysql数据库中,我们可以使用字符串存储时间,但是如果我们需要基于时间字段进行查询操作(查询在某个时间段内的数据)就不便于查询实现

4.最常用数据类型

数值:int/integer double 字符:char varchar 时间:date datetime

字段约束

约束:在创建数据表的时候,指定的对数据表的列的数据限制性的要求(对表中的数据进行限制)

为什么给表中的数据创建约束?

保证数据的有效性、完整性、正确性

字段的约束一般必须要加;

字段约束唯一约束------主键约束

在创建的表的列元素后加上一个unique,表示不可重复,主键约束。

主键约束:唯一+非空组合 unique+not null

primary key

字段约束---联合主键

联合主键------将数据表中的多列组合在一起设置为表的主键

当没有任意一列能够单独标出特定的一列时,可以用联合主键将两列联合起来确定唯一一个主键列,两列联合称作联合主键。

注意:在实际企业项目的数据库设计中,联合主键使用频率并不高,当一个数据表中没有明确的字段可以作为主键时,我们可以添加一个ID字段作为主键

外键约束:多表关联部分 表关联关系

相关推荐
迷失的walker5 分钟前
【Qt C++ QSerialPort】QSerialPort fQSerialPortInfo::availablePorts() 执行报错问题解决方案
数据库·c++·qt
程序新视界23 分钟前
什么是OLTP ,MySQL是如何支持OLTP的?
数据库·后端·mysql
pen-ai43 分钟前
【数据工程】14. Stream Data Processing
数据库·oracle
倔强的石头1061 小时前
【金仓数据库】ksql 指南(三) —— 创建与管理表空间和模式
数据库·金仓数据库
金仓拾光集1 小时前
__金仓数据库平替MongoDB:银行存款系统国产化实践__
数据库·mongodb
流烟默1 小时前
MongoDB入门指南基础篇
数据库·mongodb
金仓拾光集1 小时前
_金仓数据库平替MongoDB实战:制造业生产进度管理的国产化升级之路
数据库·mongodb
熊文豪2 小时前
时序数据库选型指南:从大数据视角看高效存储与分析
大数据·数据库·时序数据库
Lisonseekpan2 小时前
为什么要避免使用 `SELECT *`?
java·数据库·后端·sql·mysql·oracle
Wilson Chen2 小时前
深入理解 MySQL 事务与锁机制:从 ACID 到 Next-Key Lock 的实证之旅
java·数据库·mysql