ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

MYSQL约束条件的写法,以及个人的思路

2021-05-28 09:04:53  阅读:169  来源: 互联网

标签:约束条件 存储 创建 非空 约束 MYSQL 如果 写法 主键


前言

近几天一个小伙伴问我如何创建表的约束,楼主突发奇想,分享一篇关于mysql基础的知识奉给热爱学习的sql初学者们,各位大佬就当看个乐呵


首先大家一定要掌握几种常见的约束条件
1:primary key(主键约束)
主键约束是物理上的储存,每个表的第一个开头都建议创建一个主键约束,主键约束在创建的同时呢也会自动创建一个唯一的索引,用于后期方便查找,如果一个表的表头出现重复的值,那么后期你将会非常难找
(这里用 excel给大家举个小栗子)

如果出现同样的1,你将无法后期查询到想要的数值。
2:not null (非空)
非空的意思呢就是不允许这个地方的值是空的,空值将无法使用insert into进行存储,非空的话建议大家根据实际的情况进行判断,如果我创建的这个表的这一列是用来存储客户的年龄,或者电话号的,那就可以是空值,因为客户不一定会告诉你,如果他愿意说,你可以存,如果不愿意说,那就可以不存,但是假如今天你是在为银行,贷款机构等等,那是不是就必须是非空了,要不然后期联系不上就emmm…


3: unique (唯一
unique的意思就是不允许重复,咱们在举个栗子,每个人的身份证号,手机号,指纹这都是唯一的东西,如果出现俩张同样的身份证,那后果将难以估计,如果今天你是在为保险做数据库表,那后期查询是出现俩个同样的身份证,是不是就证明俩个人里面有人是假的身份证,那如果提前设置为唯一,那是不是在存储的阶段就可以避免掉这个错误。


4: default (默认)
default的意思就是如果你不存储进去任何数值或者字符串的时候默认存储为0,这样我们就可以让这个地方存在值但又不影响我们的使用,以后想存储直接插进去就行。

5:foreign key (外键约束)
外键约束的话一般用来连接俩张表格的,这样受外键约束表中的数字就不可随便的进行修改,比如说一个医院的数据库,医生,病人是不是就会经常进行更换,今天这个出院,明天那个有办理了住院手续,医生今天这个上班,明天那个出诊,后天专家号的,但是呢,部门是不是就不会变,儿科就是儿科,内科就是内科,医院肯定不希望有人随意的对数据库中的这张表格进行修改,那样就乱套了,讲到这里大家应该就对常见的几种约束有了深刻了理解。

还有就是例如unigned(无符号的),auto_increment(自动增量),zerofill(补零)…这里做个简单的概述
unsigned:无符号的一般用于存储年龄等不可能为负值的数,这里奉上一张表格,供大家参考

auto_increment :顾名思义就是进行自动存储的,在你没有insert into的时候自动给一个可标识的数值,如果你在增加1,2之后插入一个8,就会从8开始向后自增,而不是2开始。

看到这里的小伙伴们真的非常的感谢,预祝大家在程序的海洋里尽情的遨游,奥里给!!!
————————————————
版权声明:本文为CSDN博主「bigdate涛」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_57997021/article/details/116778985

文章最后发布于:2021-05-28 08:39:1

标签:约束条件,存储,创建,非空,约束,MYSQL,如果,写法,主键
来源: https://blog.csdn.net/weixin_57997021/article/details/117350615

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有