mysql
mysql
全栈开发
全栈开发工程师,互联网教育特约讲师
展开
-
mysql专栏 01.基础配置
01.mysql安装与启动 [toc]{type: “ol”, level: [2, 3, 4, 5]} 启动服务端: 系统偏好设置 --> mysql --> start mysql server 启动客户端: # 永久环境变量 sudo vim /etc/paths 添加:/usr/local/mysql/bin # 临时环境变量 PATH=$PATH:/usr/local/mysql/bin; # 输入密码启动 mysql -h 127.0.0.1 -P 3306 -u root原创 2022-03-28 09:54:08 · 351 阅读 · 0 评论 -
mysql专栏 02.常用语法
01.sql语句初识 [toc]{type: “ol”, level: [2, 3, 4, 5]} 查看数据库 以 ; 作为结束标志 show databases; 查看所有库名 \c 取消前面的命令 quit; exit; 退出客户端 查看当前进程 Mac: ps aux 查看多个 ps aux|process_name 查看单个 Win: tasklist 查看多个 tasklist|process_name 查看单个 taskkill /F /PID 8504原创 2022-03-28 09:58:49 · 75 阅读 · 0 评论 -
mysql专栏 03.数据类型
01.整型 [toc]{type: “ol”, level: [2, 3, 4, 5]} 整型 tinyint 1字节 8位 smallint 2字节 16位 int 4字节 32位 bigint 8字节 84位 约束条件 unsigned 设置为无符号数据[默认为有符号] zerofill 数据不足n位时,用0填充至n位十进制[默认前方用空格填充] 整形后面的括号,不是用来指定宽度的,而是用来指定显示的十进制数字位数,无需填写,默认即可 02.浮点型 [toc]{type:原创 2022-03-28 10:00:57 · 76 阅读 · 0 评论 -
mysql专栏 04.多表关系
01.一对多表关系 [toc]{type: “ol”, level: [2, 3, 4, 5]} 一对多表关系[同时成立] 员工表的一个员工,不能对应部门表的多个部门 部分表的一个部门,可以对应员工表的多个员工 优先创建被关联表 create table dep( id int primary key auto_increment, dep_name char(16), dep_desc char(32) ); create table em( id int primar原创 2022-03-28 10:03:06 · 84 阅读 · 0 评论 -
mysql专栏 05.关键字 01.where过滤
01.where 过滤 [toc]{type: “ol”, level: [2, 3, 4, 5]} 基础概念 select * from table_name\G 单独展示每一行的数据 书写顺序: select id,name from emp where id > 3; 执行顺序: from --> where --> select 查询 3 <= id <= 5 的数据: select id,name from emp where id >原创 2022-03-28 10:04:57 · 118 阅读 · 0 评论 -
mysql专栏 05.关键字 02.group by
02.groud by 分组 [toc]{type: “ol”, level: [2, 3, 4, 5]} 按照部门分组: select id,name,post from emp group by post; --严格模式下会报错 -- 分组之后,最小的可操作单位是组,而不是单个数据,因此分组后无法获取组内单个数据 查询分组后每个部门的数据: 最高薪资: select post[as other_name],max(salary)[as other_name] from emp group by po原创 2022-03-28 10:05:48 · 334 阅读 · 0 评论 -
mysql专栏 05.关键字 03.distinct、order by、limit
distinct去重 去重时,如果有主键存在,记得去掉主键 select distinct salary from emp; ORM对象映射: 表 --> 类 数据 --> 对象 字段值 --> 对象属性 order by 排序 -- 默认为升序: -- 按照薪资排列: select * from emp order by salary [asc / desc]; -- 按照薪资降序排列,薪资相同时,按照年龄升序排列: select * from原创 2022-03-28 10:10:46 · 115 阅读 · 0 评论 -
mysql专栏 05.关键字 04.多表查询
04.多表查询 笛卡尔积 select * from dep,emp; 拼表操作: select * from emp,dep where emp.dep_id = dep.id; 推荐方式 inner join 内连接 --只拼接两张表中共有的/有关联的数据 select * from emp inner join dep on emp.dep_id = dep.id; 了解 left join 左连接 --展示左表所有的数据,没有对应的项就用null right join 右连接 --展示右表所有的原创 2022-03-28 10:12:09 · 1592 阅读 · 2 评论 -
mysql专栏 05.关键字 05.子查询
07.子查询 [toc]{type: “ol”, level: [2, 3, 4, 5]} 子查询 将一个查询语句的结果当作另外一个查询语句的条件 查询部门是技术或人力资源的员工信息: 1.查询部门的id号 select id from dep where dep_name = '技术部' 2.找到对应id的员工信息 select name from emp where dep_id in (1); 精简: select name from emp where dep_id in原创 2022-03-28 10:13:06 · 103 阅读 · 0 评论 -
mysql专栏 05.关键字06.数据准备
06.数据准备 create table emp( id int not null unique auto_increment, name char(16) not null, sex enum('male', 'female') not null default 'male', age int(3) unsigned not null default 28, hire_date date not null, post char(50), post_c原创 2022-03-28 10:14:15 · 69 阅读 · 0 评论 -
mysql专栏 06.pymysql 01.基本使用
01.pymysql 基本使用 基本使用 # 引入pymysql import pymysql conn = pymysql.connect( host='127.0.0.1', port=3306, user='root', password='root1234', # 不要写成utf-8 charset='utf8', database='db_04' ) # 生成一个游标对象 用于执行命令 # 以字典形式返回查询结果 cursor = conn原创 2022-03-28 10:18:25 · 99 阅读 · 0 评论 -
mysql专栏 06.pymysql 02.sql注入及解决方法
02.sql注入及解决方法 sql注入及解决方法 import pymysql conn = pymysql.connect( host='127.0.0.1', port=3306, user='root', password='root1234', # 不要写成utf-8 charset='utf8', database='db_04' ) cursor = conn.cursor(cursor=pymysql.cursors.DictCurso原创 2022-03-28 10:19:45 · 74 阅读 · 0 评论 -
mysql专栏 06.pymysql 03.pymysql增删改查
03.pymysql增删改查 [toc]{type: “ol”, level: [2, 3, 4, 5]} pymysql增删改查 import pymysql conn = pymysql.connect( host='127.0.0.1', port=3306, user='root', password='root1234', # 不要写成utf-8 charset='utf8', database='db_04', # 设置自动提交原创 2022-03-28 10:21:09 · 81 阅读 · 0 评论