MYSQL 数据库给表加约束条件 (史上最详细教程!)!!
先查看下已经创建好的表,若不会创建请看上期视频!!
为message表:
mysql> show columns from message;// 命令
+-----------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+--------------+------+-----+---------+-------+
| m_id | int(11) | YES | | NULL | |
| m_name | varchar(60) | YES | | NULL | |
| m_sex | varchar(16) | YES | | NULL | |
| m_brith | date | YES | | NULL | |
| m_address | varchar(250) | YES | | NULL | |
+-----------+--------------+------+-----+---------+-------+
可以看到表中字段没有加约束条件,下来我们来加一下吧!
1.给m_id字段加主键约束primary key条件!
mysql> alter table message add primary key(m_id);//命令
Query OK, 0 rows affected (0.99 sec)//出现这,表示已成功!
下来来看下表的结构吧!
mysql> show columns from message;//命令
+-----------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+--------------+------+-----+---------+-------+
| m_id | int(11) | NO | PRI | NULL | |
| m_name | varchar(60) | YES | | NULL | |
| m_sex | varchar(16) | YES | | NULL | |
| m_brith | date | YES | | NULL | |
| m_address | varchar(250) | YES | | NULL | |
+-----------+--------------+------+-----+---------+-------+
可以看到主键加入成功!
2.给m_id字段加自动编号auto_increment
mysql> alter table message modify m_id int auto_increment;//命令
Query OK, 0 rows affected (1.19 sec)//自动编号加入成功!
同样来看下表的结构吧!
mysql> show columns from message;//命令
+-----------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+--------------+------+-----+---------+----------------+
| m_id | int(11) | NO | PRI | NULL | auto_increment |
| m_name | varchar(60) | YES | | NULL | |
| m_sex | varchar(16) | YES | | NULL | |
| m_brith | date | YES | | NULL | |
| m_address | varchar(250) | YES | | NULL | |
+-----------+--------------+------+-----+---------+------------
可以看到自动编号加入成功!
3.给表m_name字段加唯一约束unique
alter table message add unique(m_name);//命令
Query OK, 0 rows affected (0.66 sec)//表示成功!
下来看一下表的结构吧!
mysql> show columns from message;//命令
+-----------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+--------------+------+-----+---------+----------------+
| m_id | int(11) | NO | PRI | NULL | auto_increment |
| m_name | varchar(60) | YES | UNI | NULL | |
| m_sex | varchar(16) | YES | | NULL | |
| m_brith | date | YES | | NULL | |
| m_address | varchar(250) | YES | | NULL | |
+-----------+--------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)
可以看到加入成功!
4.给表m_sex加非空约束not null
mysql> alter table message modify m_sex varchar(16) not null;//命令
Query OK, 0 rows affected (1.01 sec)//成功!
查看下表的结构
mysql> show columns from message;//命令
+-----------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+--------------+------+-----+---------+----------------+
| m_id | int(11) | NO | PRI | NULL | auto_increment |
| m_name | varchar(60) | YES | UNI | NULL | |
| m_sex | varchar(16) | NO | | NULL | |
| m_brith | date | YES | | NULL | |
| m_address | varchar(250) | YES | | NULL | |
+-----------+--------------+------+-----+---------+----------------+
5.给表m_sex加默认约束default,默认为女吧!!
mysql> alter table message modify m_sex varchar(16) default '女';//命令
Query OK, 0 rows affected (0.47 sec)//成功!
查看下表的结构!
mysql> show columns from message;//命令
+-----------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+--------------+------+-----+---------+----------------+
| m_id | int(11) | NO | PRI | NULL | auto_increment |
| m_name | varchar(60) | YES | UNI | NULL | |
| m_sex | varchar(16) | YES | | 女 | |
| m_brith | date | YES | | NULL | |
| m_address | varchar(250) | YES | | NULL | |
+-----------+--------------+------+-----+---------+----------------+
可以看到加入成功!
6.给表m_id 加检查约束check
mysql> alter table message add constraint m_id check(m_id>10);//命令
Query OK, 0 rows affected (0.62 sec)//成功
查看下表的结构!
mysql> show columns from message;//命令
+-----------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+--------------+------+-----+---------+----------------+
| m_id | int(11) | NO | PRI | NULL | auto_increment |
| m_name | varchar(60) | YES | UNI | NULL | |
| m_sex | varchar(16) | YES | | 女 | |
| m_brith | date | YES | | NULL | |
| m_address | varchar(250) | YES | | NULL | |
+-----------+--------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)
咱们下期来说外键约束吧,
关注我持续为你更新!!
MYSQL 数据库给表加约束条件 (史上最详细教程!)!!相关推荐
- GitHub-Hexo-搭建个人博客史上最详细教程
GitHub+Hexo 搭建个人网站详细教程 更多精彩内容欢迎访问我的个人博客皮皮猪:http://www.zhsh666.xyz或者http://www.zh66.club期待您的光临哦!我是皮皮猪 ...
- Git史上最详细教程(详细图解)
目录 Git简介: 什么是Git,它有什么作用? Git四个区域 ?Git四个状态: .gitignore忽略文件 格式规范: glob模式的正则表达式: ?操作文件 ?上传至云端服务器 远程连接: ...
- 【如何利用idea提交本地代码到git远程仓库,史上最详细教程,建议收藏!】
1.首先在gitee上注册一个账号 2.在gitee创建一个远程仓库 3.idea配置git 注意git要提前下载配置好 4.建立一个简单项目 5.建立本地仓库 本地仓库选择在本项目即可 6.建立本地 ...
- 《0元搭建个人博客史上最详细教程》(域名申请及备案篇)
阿里云域名0元申请链接 疫情期间可以免费申请一年3个 .网址后缀的域名,需要分3次下单,一次申请一个! 0元结算申请 域名备案教程(建议手机阿里云app备案提高通过率) 阿里云备案网址链接: 1移动端 ...
- Ubuntu16.04安装Caffe史上最详细教程(CPU),亲测三次!!!
一.前言 为了安装caffe,本人已经在centos7.x上试错了1次,目前弃疗~:在Ubuntu18.04上试错了3次,目前也弃疗~不是我懒,说实话,bug是真tm多,问问度娘,自己体会体会~我一向 ...
- 虚拟机kali升级最新_虚拟机中安装kali 2020.3 史上最详细教程
废话不多说,先去下载kali 2020.3的镜像软件 这里也可以 百度云: 链接:https://pan.baidu.com/s/1I1yrJn4GLXBacOPgpgb2fA 提取码:76c6 有了 ...
- [转]个人网站对接支付宝,微信支付接口史上最详细教程
对接支付宝支付接口,官方文档已经写的很清楚了,但是也有很多像我一样的小白,第一次对接支付宝支付接口,会有些迷茫,所以我在此写下这篇文章,给我和我一样的同学,一点思路吧.三分钟就可以申请,支付宝个人即时 ...
- 【CubeIDE】STM32 HAL库史上最详细教程(一):UART串口收发
博主能力有限,有错误望大佬指出 0x00 文章内容: UART阻塞方式收发 UART中断方式收发 UART中断回调函数 UART DMA方式收发 printf()函数串口重定向 0x01 UART阻塞 ...
- 网站对接支付宝,微信支付接口史上最详细教程
联系qq:1104752746对接支付宝支付接口,官方文档已经写的很清楚了,但是也有很多像我一样的小白,第一次对接支付宝支付接口,会有些迷茫,所以我在此写下这篇文章,给我和我一样的同学,一点思路吧.三 ...
- cocos2d-js ttf字体总结(史上最详细教程)。
网上有关cocos2d引擎字体使用的教程可以说是满天飞我就不说了,本文主要讲解如何使用第三方.ttf字体. cocos2d-js 分web和jsb版本,首先讲解web版本如何使用第三方xxxx.ttf ...
最新文章
- python爬虫抓取信息_python爬虫爬取网上药品信息并且存入数据库
- python动态网页开发教程_python django创建一个属于自己的动态网站
- mysql导出d盘_mysql 导出导入数据库
- spring cloud入门_Spring Boot 2.x基础教程:快速入门
- lenovo 一键恢复6.0 NOVO下密码遗忘的解决方案
- android textView设置粗体
- c 结构体中的变长数组
- 汇量科技收购热云数据,加速SaaS工具生态布局
- 【Matlab/C/Python/VB/...】代码复制到word时如何变成彩色的
- vi/vim 按键说明
- Java自定义异常、全局捕获异常、拦截器 实现动态控制登录超时
- 固定大小采样池中的随机采样证明
- 用Python爬取淘宝2000款套套
- (美)梅耶(Myers, G. J.) 等《软件测试的艺术(原书第3版)》书籍(第3版)
- 图书馆图书管理系统python_使用python的简易图书馆管理系统
- python正则表达式与re模块
- 你知道项目为啥会失败么?就是因为你们产品看了这本书。
- html鼠标背景特效,6种鼠标滑过按钮背景动画特效
- ps基础学习:用形状工具制作交通标识
- Halcon图像采集助手提示找不到指定DLL文件
热门文章
- 使用虚拟机连接真实服务器,太一星晨:虚拟化和应用交付演绎珠联璧合
- win10配置ffmpeg环境
- android studio Emulator is outdated
- idea出现outdated version提示框
- springboot-shiro-jwt-redis实现用户登录的认证与授权(前后端分离)需要有一定shiro、jwt、redis、springboot基础
- C语言中时间相关函数总结
- Linux系统用户添加到用户组
- iLife '09测评
- <数据结构>链表实战之单链表与双链表的增删改查
- p图软件pⅰc_P图教程|教你做超火的iMessage图 所需软件:Picsart QQ_修图软件_滤镜_picsart怎么样_纯白色_相册_我超会p图der_摄影_摄影技巧_修图技巧...