Mysql建表相关

官网

https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html

普通建表带日期

CREATE TABLE `user` (
  `id` bigint(20) NOT NULL COMMENT '主键ID',
  `name` varchar(30) DEFAULT NULL COMMENT '姓名',
  `age` int(11) DEFAULT NULL COMMENT '年龄',
  `email` varchar(50) DEFAULT NULL COMMENT '邮箱',
  `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;



带乐观锁,日期用mybatis-plus自动填充,带逻辑删除

CREATE TABLE IF NOT EXISTS `user` (
  `id` bigint(20) NOT NULL COMMENT '主键ID',
  `name` varchar(30) DEFAULT NULL COMMENT '姓名',
  `age` int(11) DEFAULT NULL COMMENT '年龄',
  `email` varchar(50) DEFAULT NULL COMMENT '邮箱',
  `version` int(10) DEFAULT '1' COMMENT '乐观锁',
  `deleted` int(1) DEFAULT '0' COMMENT '逻辑删除',
  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

MYISAM和INNODB的区别

ALTER用法

外键(两种方式)–避免使用这种方式,外键用代码实现(推荐)


INSERT UPDATE DELETE


SQL语言

数据操纵语言DML,

INSERT UPDATE DELETE

数据查询语言DQL,
数据定义语言DDL,
数据控制语言DCL

七种join 理论

内连接(两表的共有部分)

SELECT * FROM tbl_dep d INNER JOIN tbl_emp e ON d.id=e.deptId;

左连接(左表的全部,右表不满足补NULL)

SELECT * FROM tbl_dep d LEFT JOIN tbl_emp e ON d.id=e.deptId;

右连接(右表的全部,左表不满足的补NULL)

SELECT * FROM tbl_dep d RIGHT JOIN tbl_emp e ON d.id=e.deptId;

特殊的左连接,(显示为左表的独有的数据)

说明:查询tbl_dep 表中跟tbl_emp 表无关联关系的数据,即tbl_dep 独占,且tbl_emp 表的显示列补NULL;
SELECT * FROM tbl_dep d LEFT JOIN tbl_emp e ON d.id=e.deptId WHERE e.deptId IS NULL;

特殊的右连接(显示为右表的独有的数据 )

说明:查询tbl_emp 表中跟tbl_dep 表无关联关系的数据,即tbl_emp 独占,且tbl_dep 表的显示列补NULL;
SELECT * FROM tbl_dep d RIGHT JOIN tbl_emp e ON d.id=e.deptId WHERE d.id IS NULL;

全连接(显示全部数据)(mysql 不支持 full outer join)

UNION :有去重的功能。
SELECT * FROM tbl_dep d LEFT JOIN tbl_emp e ON d.id=e.deptId UNION
SELECT * FROM tbl_dep d RIGHT JOIN tbl_emp e ON d.id=e.deptId;

显示两表的独有的数据

SELECT * FROM tbl_dep d LEFT JOIN tbl_emp e ON d.id=e.deptId WHERE e.deptId IS NULL UNION
SELECT * FROM tbl_dep d RIGHT JOIN tbl_emp e ON d.id=e.deptId WHERE d.id IS NULL;

LIMIT分页


其中总页数有误:总页数=Math.ceil(数据总数/页面大小)

事务(写的太带劲了)

https://www.cnblogs.com/takumicx/p/9998844.html

创建数据库

//character set utf8 --设置字符集
//collate utf8_general_ci --核对字符集
create database shop character set utf8 collate utf8_general_ci;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卡卡罗特琪琪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值