JavaWeb开发-06-SpringBootWeb-MySQL

一.MySQL概述

1.安装、配置

官网下载地址:https://dev.mysql.com/downloads/mysql/

2.数据模型

3.SQL简介

二.数据库设计-DDL

1.数据库

官网:http:// https://www.jetbrains.com/zh-cn/datagrip/

2.表(创建、查询、修改、删除)

sql 复制代码
# 查询所有数据库
show databases;

# 创建数据库
create database db02;

# 删除数据库
drop database db02;

# DDL : 表结构
# 创建 : 基础语法
-- auto_increment 自增
create table tb_user(
    id int primary key auto_increment comment 'ID 唯一标识',
    username varchar(20) not null unique comment '用户名',
    name varchar(10) not null comment '姓名',
    age int comment '年龄',
    gander char(1) default '男' comment '性别'
) comment '用户表';
sql 复制代码
-- DDL: 查看表结构
-- 查看: 当前数据库下的表
show tables;

-- 查看: 查看指定表结构
desc table_emp;

-- 查看: 数据库的建表语句
show create table table_emp;
sql 复制代码
# DDl : 修改表结构

# 修改 : 为表 tb_emp 添加字段 qq varchar(11)
alter table table_emp add qq varchar(11) comment 'QQ';

# 修改 : 修改 tb_emp 字段类型 qq varchar(13)
alter table table_emp modify qq varchar(13) comment 'QQ';

# 修改 : 修改 tb_emp 字段名 qq 为 qq_num varchar(13)
alter table table_emp change qq qq_num varchar(13) comment 'QQ';

# 修改 : 删除 tb_emp 的 qq 字段
alter table table_emp drop qq_num;

# 修改 : 将 tb_emp 表名修改为 emp
rename table table_emp to emp;

# 修改 : 将 emp 表名修改为 tb_emp
rename table emp to table_emp;
sql 复制代码
-- DDL : 删除表结构
-- 删除 : 删除 table_emp 表
drop table if exists table_emp;

-- 表备份
-- auto-generated definition
create table table_emp
(
    id          int auto_increment comment '主键ID' primary key,
    username    varchar(20)                  not null comment '用户名',
    password    varchar(32) default '123456' null comment '密码',
    name        varchar(10)                  not null comment '姓名',
    gander      tinyint unsigned             not null comment '性别:1-男,2-女',
    image       varchar(300)                 null comment '图像url',
    job         tinyint unsigned             null comment '职位:1 班主任, 2 讲师, 3 学工主管, 4 教研',
    entryDate   date                         null comment '入职日期',
    create_time datetime                     not null comment '创建时间',
    update_time datetime                     not null comment '修改时间',
    qq_num      varchar(13)                  null comment 'QQ',
    constraint table_emp_username_uindex
        unique (username)
)
    comment '员工表';

三.数据库操作-DML

sql 复制代码
-- DML : 数据操作语言

-- DML : 插入数据 - insert
-- 1.为 tb_emp 表的username, name, gander 字段插入值
insert into tb_emp(username, name, gander, create_time, update_time) values ('ikun', '坤坤', '1', now(), now());

-- 2.为 tb_emp 表的 所有字段插入新的值
insert into tb_emp(id, username, password, name, gander, image, job, entryDate, create_time, update_time, qq_num)
values (null, 'hei', '1234', '黑子', 2, '1.jpg', 1, now(), now(), now(), '1123456789');

-- 简化
insert into tb_emp values (null, 'ganMa', '12345', '黑子', 2, '1.jpg', 2, now(), now(), now(), '1123456780');

-- 3.批量为 tb_emp 表的 username, name, gander 字段插入数据
insert into tb_emp(username, name, gander, create_time, update_time) values ('xiaoMing',  '小明', 2, now(), now()), ('xiaoHong', '小红', 2, now(), now());
sql 复制代码
-- DML : 更新数据 - update
-- 1.将 tb_emp 表的 ID 为 1 的员工姓名name 字段更新为 '张三'
update tb_emp set name = '张三', update_time = now() where id = '1';

-- 2.将 tb_emp 表的所有员工的入职日期跟新为 '2010-01-01'
update tb_emp set entryDate = '2023-01-02', update_time = now() where 1 = 1;
sql 复制代码
-- DML : 删除数据 - delete
-- 1. 删除 tb_emp 表中 ID 为1的员工
delete from  tb_emp where id = '1';

-- 2. 删除 tb_emp 表中的所有员工
delete from  tb_emp;
相关推荐
余槐i3 小时前
PostgreSQL 函数索引报错 must be immutable:3种绕法与代价
数据库·后端·sql·postgresql·性能优化
数据库小学妹3 小时前
PostgreSQL表膨胀怎么办?autovacuum清不动的根因与排查命令
数据库·postgresql·表膨胀·mvcc·数据库运维
mister_guo3 小时前
MySQL-1267错误:排序规则冲突的原因与解决方案
数据库·mysql
骇客野人4 小时前
在麒麟操作系统上 分别安装 jdk1.8, 达梦数据库,redis ,memcache 的操作实施方案和步骤
数据库·redis·memcached
美狐美颜SDK开放平台5 小时前
直播APP如何实现美白滤镜功能?视频美颜SDK技术开发方案详解
前端·数据库·人工智能·音视频·美颜sdk·直播美颜sdk·视频美颜sdk
Lost_the_wind5 小时前
MySQL学习笔记五
mysql
花间相见7 小时前
【计算基础|MySQL01】【上手】安装连接、数据类型与建库建表
数据库·后端
花间相见7 小时前
【计算基础|MySQL02】【上手】SQL 增删改查
数据库·后端
ITxiaobing20237 小时前
IP 库与 AppsFlyer 国家/地区数据不一致,如何系统地对账?
数据库·网络协议·tcp/ip
这个DBA有点耶7 小时前
从时间到语义:时序数据库与向量数据库的核心机制、选型与多模融合趋势
数据库·mysql·架构