java学习记录之MySql二

news/2024/7/7 21:38:46

1 mysql回顾
1.1 DDL
数据定义语言:结构
 数据库database
create database 数据库名称 character set 字符集 [collate 比较];
drop database 数据库名称;
alter database 数据库名称 character set 字符集 …;
 表
create table 表名(字段描述 , … );
字段描述:字段名称 字段类型 字段约束
类型:
char() varchar()
tinyint int bigint double() numeric() …
date / datetime / time /timestamp 时间戳
blob、text 、 longblob、longtext
约束:
主键:primary key ,唯一,不能为null
唯一:unique
非空:not null
自动增长列:auto_increment --> int primary key
外键:foreign key

1.2 DML
 插入数据:insert into 表名(字段,…) values(值,…) --> 值必须使用引号,建议单引号
 更新数据:update 表名 set 字段=值,。。。。。。 where 条件
 删除数据:delete from 表名 where 条件

1.3 DQL
 查询语句
 select *| id,name from 表名 where 条件

2 SQLyog 安装
 SQLyog mysql数据库操作图形化工具,取代cmd。
在这里插入图片描述

 安装时,参考day13/资料/《SQLyog安装.doc》
 服务器没有启动
在这里插入图片描述
在这里插入图片描述

 安装版,将启动注册给操作系统的“服务”–services.msc
net start mysql --> 启动服务
net stop mysql --> 关闭服务

3 多表操作–表与表之间关系
 表与表之间关系,指表中数据之间关系的。
 分类:一对多、多对多、一对一

3.1 一对多
 实例:
国家(1) – ()城市
教室(1) – (
)学生
用户(1) – ()订单【】
皇上(1) – (
)妃子
 实现
在这里插入图片描述

1 一对多

  • 创建主表,确定主表的主键
  • 创建从表,给从表添加外键字段
  • 使用 主外键关系 描述 一对多。
    create table t_user(
    id varchar(32) primary key, #必须要有主键
    username varchar(50),
    password varchar(32)
    );
    create table t_order(
    id varchar(32),
    price double(5,2),
    user_id varchar(32) # 必须与主表主键类型一致
    );
    使用主外键关系 , 从表外键 与 主键主键 形成 主外键关系
    格式: alter table 从表表名 add [constraint] foreign key (从表外键) references 主表表名 (主表主键);
    alter table t_order add constraint foreign key (user_id) references t_user (id);
    在这里插入图片描述

http://lihuaxi.xjx100.cn/news/1274988.html

相关文章

Yolov5/Yolov7改进---注意力机制:ShuffleAttention、ECA、EffectiveSE、SE

目录 1. ShuffleAttention 1.1 加入 common.py中 1.2 加入yolo.py中: 1.3 yolov5s_ShuffleAttention.yaml 2.ECA

线段树:最优清零方案

最优清零方案 问题描述 给定一个长度为 N N N 的数列 A 1 , A 2 , ⋯ , A N A_{1}, A_{2}, \cdots, A_{N} A1​,A2​,⋯,AN​ 。现在小蓝想通过若干次操作将这个数列中每个数字清零。 每次操作小蓝可以选择以下两种之一: 选择一个大于 0 的整数, 将它减去 1 ;选择连续 K…

Centos8安装python

#在CentOS 8上安装Python 3 sudo dnf install python3#在CentOS 8上安装Python 2 sudo dnf install python2#设置默认Python版本 python3 sudo alternatives --set python /usr/bin/python3#设置默认Python版本 python2 sudo alternatives --set python /usr/bin/python2

“兆易创新杯”第十八届中国研究生电子设计竞赛有感

今年的电赛给我的感觉是时间真的紧张,可能是因为去年有疫情原因影响所以能准备的时间到七月份,今年不到月底就要全部出成品。我们团队一直在自研一款增强现实眼镜,从硬件设计到软件实现全部由我和另外两个小伙伴一起完成,所以就把…

SpringBoot 插件化开发详细总结

目录 一、前言 1.1 使用插件的好处 1.1.1 模块解耦 1.1.2 提升扩展性和开放性

稀疏表:最大公约数

问题描述 给定一个数组, 每次操作可以选择数组中任意两个相邻的元素 x , y x, y x,y 并将其 中的一个元素替换为 gcd ⁡ ( x , y ) \operatorname{gcd}(x, y) gcd(x,y), 其中 gcd ⁡ ( x , y ) \operatorname{gcd}(x, y) gcd(x,y) 表示 x x x 和 y y y 的最大公约数。 请…

C++之初始化列表

C之初始化列表 在c中,初始化列表可以很大程度的简化参数的赋值,例如 class Student {public:Student();int age;string name;string number; };Student::Student():age(10), name("张三"), number("202310100599") {最近发现C中的…

HackTheBox - 学院【CPTS】复习2 - Pivoting, Tunneling, and Port Forwarding

Pivoting, Tunneling, and Port Forwarding Rpivot Rpivot基于python,一大亮点是反向socks隧道搭建,这将能有效的规避防火墙入站规则 Windows端口转发 - LOL 通过自带的netsh工具可以直接创建端口转发 netsh interface portproxy add v4tov4 listen…