【python】进阶--->MySQL数据库(四)

news2024/9/29 17:26:29

一、主键约束

primary key : 唯一标识数据库中的每一条记录.
被主键的值唯一
主键列不能为null
每个表应该都要设置主键

添加主键约束

在创建表时,直接在字段后面添加主键约束
create table 表名 (字段名 类型(长度) primary key )

创建表时,不直接在字段后面添加主键,在表的约束区添加主键

在这里插入图片描述

创建表时不写主键,表创建后,通过修改表的结构,给某个字段添加主键

在这里插入图片描述

删除主键

alter table 表名 drop primary key;

在这里插入图片描述

二、唯一约束:UNIQUE

unique约束唯一标识数据库表中的每条记录.
primary key自动拥有了unique的约束.

添加唯一约束:

创建表时,直接在字段后面添加唯一约束

在这里插入图片描述

创建表时,在约束区域添加

在这里插入图片描述

创建表后,修改表结构,声明字段唯一

在这里插入图片描述

删除唯一约束:

alter table 表名drop index 字段;

在这里插入图片描述

三、自动增长约束

在表中使用auto_increment约束,可以自动生成字段的值.搭配primary key一起使用

添加自动增长约束 :

创建表时,直接在字段后面添加

在这里插入图片描述

默认auto_increment的开始值是1,这个可以进行修改 :

在这里插入图片描述

创建表后,添加
alter table 表名 modify 字段 int 
auto_increment;

四、非空约束

not null约束强制列不接收null值

添加约束:

在创建表时,直接在字段后面添加

在这里插入图片描述

在创建表后,通过修改表结构添加
alter table 表名 modify 字段 类型(长度) not null;

删除非空约束:

alter table 表名 modify 字段 类型(长度);

五、默认约束

在添加数据时,如果该字段没有指定值,则使用默认值.

在这里插入图片描述

在创建表后,通过修改表结构添加
alter table 表名 modify 字段 类型(长度) default 默认值;

删除默认约束:

alter table 表名 modify 字段 类型(长度);

六、外键约束foreign key

通过外键约束让表和表之间产生关联
constraint 外键名 foreign key(外键列名称) references 关联表(关联表主键字段)

在这里插入图片描述

删除外键:

alter table 表名 drop foreign key 外键名;

七、多表之间的关系:

一对一 : 一个身份证对应一个人,一个人对应一个身份证
一对多 : 一个部门有多个员工,一个员工只能对应一个部门
多对多 : 一个学生可以选择多门课程,一门课程可以被多个学生选择.

多对多建表:

一张学生表,一张课程表,一张中间关系表

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

多表查询

内连接查询(inner join,inner可以省略)
select * from 表名1, 表名2 where 条件;

在这里插入图片描述

select * from 表名1 inner join 表名2 on 条件;

在这里插入图片描述

外连接查询(outer join)
左外连接:left outer join
select * from 表名1 left outer join 表名2 on 条件;

在这里插入图片描述

右外连接:right outer join
select * from 表名1 right outer join 表名2 on 条件;

在这里插入图片描述

在这里插入图片描述

子查询

一个查询的结果作为另一个查询的一部分

在这里插入图片描述

在这里插入图片描述

关于Python_mysql数据库(四)的介绍今天就到这里啦,后续我会为大家继续介绍mysql数据库的相关知识哦~
关注我,带你领略Python的风采~😍😍😍

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1386545.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

二、Spring Boot与Mybatis代码自动生成

一、Mybatis代码自动生成 下载自动生成java包:https://www.alipan.com/s/7sGR9uGKoVh 下面就是根据这个进行简单配置即可 1.修改 下面主要修改这个文件 如下 如下 如下 运行 2.结果 解释:在运行之后,就会在上面输入的包里面创建…

【ubuntu】docker中如何ping其他ip或外网

docker中如何ping其他ip或外网 示例图: 运行下面命令: docker run -it --namehei busybox看情况需要加权限 sudo,即: sudo docker run -it --namehei busyboxping 外网 ping -c 4 www.baidu.comping 内网 ping -c 4 192.168.…

rime中州韵小狼毫 联想词组 滤镜

教程目录:rime中州韵小狼毫须鼠管安装配置教程 保姆级教程 100增强功能配置教程 在 rime中州韵小狼毫 自定义词典 一文中,我们分享了如何在rime中州韵小狼毫须鼠管输入法中定义用户自定义词典;通过自定义词典,我们可以很方便的在…

LeetCode:82. 删除排序链表中的重复元素 II(C++、Java)

目录 82. 删除排序链表中的重复元素 II 题目描述: 实现代码与解析: 链表遍历: 实现代码与解析: 82. 删除排序链表中的重复元素 II 题目描述: 给定一个已排序的链表的头 head , 删除原始链表中所有重复…

【我与Java的成长记】之继承详解(二)

系列文章目录 能看懂文字就能明白系列 C语言笔记传送门 Java笔记传送门 🌟 个人主页:古德猫宁- 🌈 信念如阳光,照亮前行的每一步 文章目录 系列文章目录🌈 *信念如阳光,照亮前行的每一步* 前言一、super关…

VBA之Excel应用第五节:录制宏时,使用绝对引用和相对引用

《VBA之Excel应用》(版权10178983)是非常经典的,是我推出的第七套教程,定位于初级,目前是第一版修订。这套教程从简单的录制宏开始讲解,一直到窗体的搭建,内容丰富,实例众多。大家可…

乡镇景区外卖需求的上涨,现在下场做外卖平台服务晚不晚?

如今,在田间地头点外卖已经变成了现实。随着外卖市场的发展,外卖消费的多样化场景逐渐显现,不仅在田间可以订餐外卖,出门旅行的任何地方都可以点上一份热腾腾的外卖送到面前。特别是从去年开始旅游经济恢复之后,外卖也…

分类预测 | Matlab实现ZOA-CNN-MATT-SVM斑马优化卷积神经网络多头注意力机制结合支持向量机的数据分类预测【24年新算法】

分类预测 | Matlab实现ZOA-CNN-MATT-SVM斑马优化卷积神经网络多头注意力机制结合支持向量机的数据分类预测【24年新算法】 目录 分类预测 | Matlab实现ZOA-CNN-MATT-SVM斑马优化卷积神经网络多头注意力机制结合支持向量机的数据分类预测【24年新算法】分类效果基本描述程序设计…

构建镜像:探索容器化应用部署的核心技术

目录 引言:前提准备:构建镜像:基本结构准备工作镜像运行镜像优化 总结 引言: 容器化应用部署已经成为当今软件开发和运维中的热门话题。构建镜像是容器化部署的关键步骤之一,它能够帮助开发人员和运维团队快速、高效地…

Flink-容错机制

Flink中的容错机制 流式数据连续不断地到来,无休无止;所以流处理程序也是持续运行的,并没有一个明确的结束退出时间。机器运行程序,996 起来当然比人要容易得多,不过希望“永远运行”也是不切实际的。因为各种硬件软件…

排序——归并排序

文章目录 基本思想递归版本思路代码实现 非递归版思路代码实现 结果演示 基本思想 归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide andConquer)的一个非常典型的应用。将已有序的子序列…

基于深度学习的时间序列算法总结

1.概述 深度学习方法是一种利用神经网络模型进行高级模式识别和自动特征提取的机器学习方法,近年来在时序预测领域取得了很好的成果。常用的深度学习模型包括循环神经网络(RNN)、长短时记忆网络(LSTM)、门控循环单元&a…

数据库知识汇总之MySQL

目录 MySQL数据库特点MySQL下载MySQL配置文件初始化MySQL配置安装MySQL服务 启动MySQL服务登录数据库修改数据库登录密码MySQL错误代码1130 MySQL数据库特点 MySQL是一个开源关系型数据库管理系统(RDBMS),由Oracle公司维护和开发。它使用SQL语言进行数据库管理和操…

mfc140.dll丢失了要怎么解决?多种解决mfc140.dll方法对比

mfc140.dll丢失了怎么办?mfc140.dll丢失的多个解决方法今天就来给大家详细的说说,因为平时实在是太多人咨询这个问题了,都说自己电脑的mfc140.dll找不到了,一些程序没办法运行,所以还是给大家分析一下mfc140.dll。 一.…

droupout(Pytorch中的代码实现)

图片来源: 【Pytorch】torch.nn.Dropout()的两种用法:防止过拟合 & 数据增强-CSDN博客 注意: droupout可以进行数据增强或者防止数据过拟合。 droupout在全连接层之后,使得部分神经元失活,但是为什么能保持数据…

使用官方构建工具来创建一个vue3的项目

当你使用 Vite 构建项目时,可能会发现在命令行界面无法选择是否包含 TypeScript 等其他基础配置。此外,使用 vue create 命令创建项目时,默认会使用 vue-cli,但项目启动等过程可能较慢。在这种情况下,你可以参考以下步…

如何使用Java采集汽车之家车辆配置参数信息

目录 一、引言 二、采集工具选择 三、采集流程设计 1、确定采集目标 2、确定采集URL 3、发送HTTP请求 4、解析HTML页面 5、CSS选择器或jQuery选择器。 6、异常处理和日志记录 四、代码实现示例 五、结果与分析 六、结论 随着互联网的普及和信息技术的不断发展&…

VS代码生成工具ReSharper v2023.3正式发布——支持C# 12

实质上,ReSharper特征可用于C#,VB.net,XML,Asp.net,XAML,和构建脚本。 使用ReSharper,你可以进行深度代码分析,智能代码协助,实时错误代码高亮显示,解决方案范…

Redis基础系列-哨兵模式

Redis基础系列-哨兵模式 文章目录 Redis基础系列-哨兵模式1. 引言2. 什么是哨兵模式?3. 哨兵模式的配置4. 哨兵模式的启动和验证4.1 主master宕机,看会出现什么问题4.2 重启6379主机 5. 哨兵模式的工作原理和选举原理5.1. SDown主观下线(Subj…

Linux 下GEO Server发布图层后,中文乱码解决方案

发布的图层,显示中文乱码,都是框框:如“口口” 第一步先查看Linux字符集 如下命令所示: 1.查看当前系统语言 echo $LANG2.查看安装的语言包 locale如果上面的命令执行后显示的是en_US.UTF-8,则说明当前语言系统及安…