My_SQL day3

知识点:约束

        1.dafault 默认约束

        2.not null 非空约束

        3.unique key 唯一约束

        4.primary key 主键约束

        5.anto_increment 自增长约束

        6.foreign key 外键约束

知识点:表关系

        1.一对一

        2.一对多

        3.多对多

知识点:约束

1.default 默认约束

create table t1(id int default 110,name varchar(10));
insert into t1(name) values("jianqi"),("fufu");+------+--------+
| id   | name   |
+------+--------+
|  110 | jianqi |
|  110 | fufu   |
+------+--------+insert into t1(id,name)values(1,"beibei"),(2,"gangber");+------+---------+
| id   | name    |
+------+---------+
|  110 | jianqi  |
|  110 | fufu    |
|    1 | beibei  |
|    2 | gangber |
+------+---------+

2. not null非空约束

数据不能为空

create table t2(id int not null,name varchar(10));
#即使赋值为空也不行,除非变成字符串;id为int类型,所以不行

3.unique key 唯一约束

create table t3(id unique key,name varchar(10) not null);
insert into t3 value(1,"jianqi");#ok
insert into t3 value(1,"jianqi");#Duplicate entry '1' for key 't3.id'
非空且唯一,第一个非空且唯一的字段会默认为主键(没设置主键的情况)

4.primary key 主键约束

非空且唯一

create table t4(id int primary key,name varchar(20) not null unique key);

5.anto_increment 自增长约束

create table t5 (id int primary key auto_increment,name varchar(20));
create table tb5(id int primary key auto_increment,name varchar(20) not null)auto_increment=100;#如果给定id值之后,后面的自增长就是按照最大的ID进行增长

6.foreign key 外键约束

create table a(a_id int primary key auto_increment,a_name varchar(20) not null);
insert into a(a_name) values ("a1"),("a2");
create table b(b_id int primary key,b_name varchar(20) not null,fy_id int not null,foreign key(fy_id) references a(a_id));
insert into b values(1,"a1",1),(2,"a2",2);
insert into b values(3,"a1",3);#报错,主表中没有#直接删除删不掉a 只能先删除b

知识点:表关系

1.一对一

学生表    课程表

2.一对多

3.多对多

学生表
create table student (s_id int primary key auto_increment,s_name varchar(20) not null);课程表
create table course(course_id int primary key auto_increment,course_name varchar(20) not null)关系表
create table zhongjian(s_id int,course_id int,primary key(s_id,course_id),foreign key(course_id) references course(course_id),);

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

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

相关文章

C++基础:Pimpl设计模式的实现

2024/11/14: 在实现C17的Any类时偶然接触到了嵌套类的实现方法以及Pimpl设计模式,遂记录。 PIMPL ( Private Implementation 或 Pointer to Implementation )是通过一个私有的成员指针,将指针所指向的类的内部实现数据进行隐藏。 …

从JVM的角度,来分析为什么Java中是值传递?

从 JVM 的角度来看,Java 中的参数传递之所以是值传递,是因为在 JVM 执行方法调用时,参数的值(不论是基本类型还是引用类型)都被复制并压入调用栈的帧(stack frame)中。让我们从 JVM 的内存模型和…

Navicat 17 功能简介 | 单元格编辑器

Navicat 17 功能简介 | 单元格编辑器 本期,我们一起了解 Navicat 17 出色的数据操作功能的单元格编辑器。单元格编辑器支持文本、十六进制、图像和网页四种格式的数据编辑,位于底部的编辑器窗格,为你编辑更大容量的数据信息提供足够的显示和操…

Unity自动LOD工具AutoLOD Mesh Decimator的使用

最近在研究大批量物体生成,由于我们没有专业美术,在模型减面工作上没有人手,所以准备用插件来实现LOD功能,所以找到了AutoLOD Mesh Decimator这个插件。 1,导入插件后,我们拿个实验的僵尸狗来做实验。 空…

爬虫补环境案例---问财网(rpc,jsdom,代理,selenium)

目录 一.环境检测 1. 什么是环境检测 2.案例讲解 二 .吐环境脚本 1. 简介 2. 基础使用方法 3.数据返回 4. 完整代理使用 5. 代理封装 6. 封装所有使用方法 jsdom补环境 1. 环境安装 2. 基本使用 3. 添加参数形式 Selenium补环境 1. 简介 2.实战案例 1. 逆向目…

免费,WPS Office教育考试专用版

WPS Office教育考试专用版,不仅满足了考试需求,更为教育信息化注入新动力。 https://pan.quark.cn/s/609ef85ae6d4

Vue前端开发,组件及组件的使用

什么是组件 组件(Component)是Vue中最强大的功能之一,每个Vue 文件就是一个个独立的组件,组件也可以被其他组件调用,形成嵌套关系,大部分的应用都是由各类不同功能的小组件进行构建,形成一个功能强大的大组件树系统&a…

Docker 中启动 NGINX 并配置 HTTPS 443 端口

在 Docker 中启动 NGINX 并配置 HTTPS 443 端口时,你需要挂载 SSL 证书和密钥文件,并更新 NGINX 配置文件。以下是详细步骤: 1. 准备证书文件 确保你有 SSL 证书和私钥文件,通常是两个文件: certificate.crt&#x…

政务数据治理专栏开搞!

写在前面 忙忙碌碌干了一年政务数据治理的工作,从法人数据到自然人,从交通到地理信息等等,突发想法开一个专栏讲一讲政务数据遇到的问题,以及治理的成效,或许有朋友爱看。 政务数据,又称之为政务数据资源&a…

前端在PC端实现支付思路流程

一.去支付 1.前端点击“去支付”按钮,请求订单详情接口,传递订单的id、订单号给后端和请求支付方式接口 2.后端返回支付信息和支付方式数据 二.弹出支付窗口 接收支付信息和支付方式数据后,前端弹出支付弹窗 三.确认支付 前端无论选择任何…

The 3rd Universal CupStage 15: Chengdu, November 2-3, 2024(2024ICPC 成都)

Problem L. Recover Statistics 题目意思&#xff1a; 给定a, b, c三个值&#xff0c;确保构造的数列中包含满足题目的数量 解题思路&#xff1a; 100 中 选择a 50个&#xff0c; b45个&#xff0c; c4个。 #include <iostream>using namespace std;using ll long …

VUE3实现好看的世界建筑中国建筑网站源码

文章目录 1.设计来源1.1 网站主界面1.2 登录界面1.3 注册界面1.4 特色建筑展览界面1.5 世界建筑介绍界面1.6 世界建筑介绍 - 详情界面1.7 中国建筑介绍界面1.8 中国建筑介绍 - 详情界面1.9 关于我们界面 2.效果和源码2.1 动态效果2.2 源代码2.3 目录结构 源码下载万套模板&…

「人眼视觉不再是视频消费的唯一形式」丨智能编解码和 AI 视频生成专场回顾@RTE2024

你是否想过&#xff0c;未来你看到的电影预告片、广告&#xff0c;甚至新闻报道&#xff0c;都可能完全由 AI 生成&#xff1f; 在人工智能迅猛发展的今天&#xff0c;视频技术正经历着一场前所未有的变革。从智能编解码到虚拟数字人&#xff0c;再到 AI 驱动的视频生成&#…

「QT」文件类 之 QTemporaryFile 临时文件类

✨博客主页何曾参静谧的博客&#x1f4cc;文章专栏「QT」QT5程序设计&#x1f4da;全部专栏「Win」Windows程序设计「IDE」集成开发环境「UG/NX」BlockUI集合「C/C」C/C程序设计「DSA」数据结构与算法「UG/NX」NX二次开发「QT」QT5程序设计「File」数据文件格式「UG/NX」NX定制…

和 Nostr 探索 Web5 的未来

Nostr 是一个我过去两年一直在关注的协议。跟所有社区一样&#xff0c;Nostr 的发展也是起起伏伏&#xff0c;有过一些破圈被主流熟悉的时刻&#xff0c;也有一些像现在这样可能让人会觉得有点沉寂的时刻。但我还是经常关注 Nostr&#xff0c;没有特别的原因&#xff0c;就是单…

提高数据处理效率:JavaScript 操作 XLSX 文件的最佳实践

前言 Excel 文件&#xff08;通常以 .xlsx 为后缀&#xff09;在各种业务场景中都有广泛应用&#xff0c;如数据分析、财务报告和其他数据表单处理。掌握如何在前端或后端使用 JavaScript 对这些 Excel 文件进行读取、创建和修改&#xff0c;能够显著提升我们的开发效率和数据…

使用Python实现对接Hadoop集群(通过Hive)并提供API接口

安装必要的库 首先&#xff0c;确保已经安装了以下库&#xff1a; pip install flask pip install pyhive代码实现 1. app.py&#xff08;主应用文件&#xff09; from flask import Flask, jsonify, request, abort from pyhive import hive import re from datetime impo…

论文学习——一种基于决策变量分类的动态约束多目标进化算法

论文题目&#xff1a; A dynamic constrained multiobjective evolutionary algorithm based on decision variable classification 一种基于决策变量分类的动态约束多目标进化算法&#xff08;Yinan Guo a,b, Mingyi Huang a, Guoyu Chen a,*, Dunwei Gong c, Jing Liang d, …

Vue计算属性computed

在 Vue 中&#xff0c;计算属性&#xff08;computed properties&#xff09;是基于已有数据进行计算得出的属性&#xff0c;通常用于需要根据已有的 data 或其他属性来动态计算值时。 基本语法 计算属性通过 Vue 实例的 computed 选项来定义。与方法不同&#xff0c;计算属性…

数据分析案例-笔记本电脑价格数据可视化分析

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…