IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> MySQL设置主键、联合主键、外键、唯一约束、非空约束、默认约束 -> 正文阅读

[大数据]MySQL设置主键、联合主键、外键、唯一约束、非空约束、默认约束

MySQL登录、查看记录等基本操作
MySQL设置表的属性值自动增加 auto_increment

1.主键、联合主键、外键

1.什么是主键

主键是在多条记录中用于确定一条记录时使用的标识符。主键具备一下特征,以和其它列进行区分。

  1. 没有重复的值
  2. 不允许输入空值

2.创建主键、联合主键

  1. 主键的两种创建方式
create table t_key
(
id int primary key,
name varchar(32),
email varchar(32)
);

# 对于第二种方式,当创建多个主键(联合主键)时,中间用`,`分割
create table t_key
(
  id int,
  name varchar(32),
  email varchar(32),
  primary key(id,email)
);

在这里插入图片描述

3.创建外键

外键:另外一张表中的主键
命令格式:constraint 外键名 foreign key(字段名) references 主表名(主键名)

create table t_class
(
  id int,
  name varchar(32),
  primary key(id)
);

create table t_student
(
  id int,
  name varchar(32),
  classid int,
  constraint ttt foreign key(classid)  references t_class(id)
);

desc t_stdudent;观察输出,classidkey值为mul,即表示它是外键
在这里插入图片描述

2.唯一约束、非空约束、默认约束

若要给字段添加两个或者两个以上的约束,约束之间要以空格隔开。

1.唯一约束

设置唯一约束的列,可确保该列不出现重复值。
添加唯一约束Unique Constraint:要求该列唯一。需要注意的是,唯一键虽然不允许重复,但允许输入null
关键字:unique

create table tmp2
(
   id int,
   username varchar(32) unique,
   sex varchar(4)
);

可以看到username允许为空,但不允许重复。
在这里插入图片描述

2.非空约束

关键字:not null
顾名思义,非空约束要求被约束列不允许为空。

create table tmp3
(
   id int primary key,
   username varchar(32) not null,
   sex varchar(4) 
);

insert into tmp3 (id,username,sex) values(1,null,'man');
在这里插入图片描述

3.默认约束

即通过default关键字给列设置默认值(default)。
如果是添加字符串型默认值要使用单引号,如果是整型则不需要加任何符号;
如果要添加的是中文默认值,则需要加上DEFAULT CHARSET=utf8;使用英文字符则不需要.

create table tmp5
(
   id int primary key,
   username varchar(32) not null,
   sex varchar(4)  default 'man'
);
insert into tmp5 (id,username) values(1,'Li Ming');
insert into tmp5 (id,username) values(2,'Li Hua');
select * from tmp5

可以看到在没有插入sex值的情况下,记录的默认值为设定好的man
在这里插入图片描述

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-03-10 22:36:15  更:2022-03-10 22:40:58 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 9:30:21-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码