MySQL--数据完整性

- 数据类型
原则
尽量使用取值范围小的,节省存储空间
整数:int, bit 
小数:decimal  表示浮点数 
decimal(5, 2) 共5位数,小数占2位 
字符串:varchar(可变长度的字符串), char(固定长度的字符串) 
日期时间:date, time, datetime 
枚举类型(enum) 
附:字符串text表示存储大文本,字符大于4000时推荐使用 
对于图片音频视频等大文件,不存储在数据库中
- 约束
主键:primary key 物理上存储的顺序 
非空:not null   
唯一:unique  字段不允许重复 
默认:default  不填写使用默认值,填写以填写为准 
外键:foreign key   
外键约束可以保证数据有效性,但是在数据增删改查 
时会降低数据库的性能,不推荐使用
时间: 2024-12-20 06:43:03

MySQL--数据完整性的相关文章

MySQL数据完整性

数据完整性 一个数据库就是一个完整的业务单元,可以包含多张表,数据被存储在表中 在表中为了更加准确的存储数据,保证数据的正确有效,可以在创建表的时候,为表添加一些强制性的验证,包括数据字段的类型.约束 数据类型 可以通过查看帮助文档查阅所有支持的数据类型 使用数据类型的原则是:够用就行,尽量使用取值范围小的,而不用大的,这样可以更多的节省存储空间 常用数据类型如下: 整数:int,bit 小数:decimal 字符串:varchar,char 日期时间: date, time, datetime

mySQL 教程 第3章 数据类型和数据完整性

第3章 数据类型和数据完整性 准备数据库 创建练习数据库,以下实验都是在这个数据库中完成. 练习1:比较各种数值型 create table tmp1 ( id INT, name VARCHAR(25), deptId decimal(5,1), salary FLOAT ); 执行desc tmp1; 显示 插入两行记录查看结果 insert into tmp1 VALUES (199,'韩立刚',3223.32,544.5); insert into tmp1 VALUES (19999,

mysql使用基础 sql语句与数据完整性(二)

二.DML:Data Manipulation Language 数据操作语言 作用:操作表中的数据的. 关键:INSERT UPDATE DELETE 注意:日期或字符串.字符要使用单引号引起来. 假设已经存在表user : 1 mysql>CREATE TABLE uesr( 2 id int, 3 username varchar(200), 4 gender varchar(10), 5 birthday date, 6 entry_date date, 7 job varchar(20

MYSQL数据库的数据完整性

数据库中存储的数据应该符合我们的预期, 这就是数据完整性. 那么如何实现数据完整性? 我们通过以下两方面来实现数据的完整性: 数据类型: 存储在数据库中的所有数据值均正确的状态.如果数据库中存储有不正确的数据值,则该数据库称为已丧失数据完整性. 数据约束: 在数据类型限定的基础上, 添加的额外的要求. 一.数据类型 数据类型影响着数据中存储的数据所占的对数据进行最基本的类型约束.空间大小. 只有类型符合要求的数据才能存储起来 这就是对数据完整性的一种要求. 使用数据类型的原则是:够用就行,尽量使

MySQL从删库到跑路_高级(一)——数据完整性

作者:天山老妖S 链接:http://blog.51cto.com/9291927 一.数据完整性简介 1.数据完整性简介 数据冗余是指数据库中存在一些重复的数据,数据完整性是指数据库中的数据能够正确反应实际情况.数据的完整性是指数据的可靠性和准确性,数据完整性类型有四种:A.实体完整性:实体的完整性强制表的标识符列或主键的完整性(通过唯一约束,主键约束或标识列属性).B.域完整性:限制类型(数据类型),格式(通过检查约束和规则),可能值范围(通过外键约束,检查约束,默认值定义,非空约束和规则)

MySQL数据库:数据完整性及约束的应用

数据完整性 1.域完整性:---------匹配完整性:非空.缺省 字段/列 2.实体完整性:-------匹配完整性:主键.唯一键 记录/行 3.引用完整性:-------匹配完整性:外键 表与表之间 约束:constraint MySQL中的约束分类 主键:primary key 唯一键:unique 非空:not null 缺省:default 外键:foreign key 主键.唯一键.外键都会自动创建索引 主键:一个表只能有一个主键,其可以对应一个字段,也可以对应多个字段(组合主键)

MySQL分库分表方案

1. MySQL分库分表方案 1.1. 问题: 1.2. 回答: 1.2.1. 最好的切分MySQL的方式就是:除非万不得已,否则不要去干它. 1.2.2. 你的SQL语句不再是声明式的(declarative) 1.2.3. 你招致了大量的网络延时 1.2.4. 你失去了SQL的许多强大能力 1.2.5. MySQL没有API保证异步查询返回顺序结果 1.2.6. 总结 MySQL分库分表方案 翻译一个stackoverflow上的问答,关于分库分表的缺点的,原文链接: MySQL shard

MySql学习(六) —— 数据库优化理论(二) —— 查询优化技术

逻辑查询优化包括的技术 1)子查询优化  2)视图重写  3)等价谓词重写  4)条件简化  5)外连接消除  6)嵌套连接消除  7)连接消除  8)语义优化 9)非SPJ优化 一.子查询优化 1. 什么是子查询:当一个查询是另一个查询的子部分时,称之为子查询. 2. 查询的子部分,包含的情况: a) 目标列位置:子查询如果位于目标列,则只能是标量子查询,否则数据库可能返回类似“错误:子查询只能返回一个字段 ( [Err] 1242 - Subquery returns more than 1

Mysql常用语句总结

对MySql经常使用语句的详细总结 下面总结的知识点全是经常用的,全都是干货,好好收藏吧./* 启动MySQL */ net start mysql /* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码 /* 跳过权限验证登录MySQL */ mysqld --skip-grant-tables -- 修改root密码 密码加密函数password() update mysql.user set password=password('root'); SHOW

Atitit.mysql 5.0 5.5  5.6 5.7  新特性 新功能

Atitit.mysql 5.0 5.5  5.6 5.7  新特性 新功能 1. MySQL  5.6    5 大新特性1 1.1. 优化器的改进1 1.2. InnoDB 改进1 1.3. 使用 memcached API 直接访问 NoSQL2 1.4. 更好的复制2 1.5. Performance Schema2 2. MySQL 5.7.62 2.1. 内建中文全文索引2 2.2. 多主复制2 2.3. other2 3. 参考2 1. MySQL  5.6    5 大新特性 M