首页 > 数据库 >MySQL入门

MySQL入门

时间:2024-04-13 11:23:00浏览次数:23  
标签:入门 t1 MySQL db1 table 查询 id name

相关概念

  1. 数据;描述数据特征的符号
  2. 记录:事物一系列典型的特征
  3. 表:文件
  4. 库:文件夹
  5. 数据库管理软件:mysql,oracle,db2,SQLserver
  6. 数据库服务器:运行数据库管理软件的计算机截屏2024-02-28 19.56.59.png

统一字符编码

统一客户端,服务端,mysqld的字符编码为utf8

SQL语句

截屏2024-02-28 22.07.56.png

操作文件夹(库)

增:create database db1 charset utf8;
删: drop database db1;
改:alter database db1 charset gbk;
查:show create database db1;
show database;

操作文件(表)

切换文件夹:use db1;
查看当前所在文件夹:select database();
增: create table t1(id int,name char) 表明字段
查: show create table t1;
show tables;
desc t1/describe;
改: alter table t1 modify name char(6);
alter table t1 change name NAME char(7);
删: drop table t1;

操作文件内容(记录)

增:insert t1(id,name) values(1,'adam'),(2,'matthew');
insert t1 values(1,'adam'),(2,'matthew');(默认字段顺序插入)
查:select id,name from db1.t1;
select * from db1.t1;
改:update db1.t1 set name='SB'(所有字段)
update db1.t1 set name='ALEX' where id=2;(指定字段)
删:delete from t1;
delete from t1 where id=2;

库操作

截屏2024-02-28 22.11.19.png截屏2024-02-28 22.12.31.png

存储引擎介绍

存储引擎就是表的类型(txt,png)截屏2024-02-28 22.16.42.png

查看Mysql支持的存储引擎

show engines;

指定表的类型/存储引擎

create table t1(id int) engine=innodb;

表的增删改查

截屏2024-03-05 00.42.50.png截屏2024-03-05 00.44.00.png截屏2024-03-05 00.46.18.png截屏2024-03-05 00.48.57.png截屏2024-03-05 00.49.21.png

数据类型

数值类型

截屏2024-03-05 00.54.31.png截屏2024-03-05 00.54.59.png截屏2024-03-05 01.07.58.png截屏2024-03-05 01.13.52.png

日期类型

截屏2024-03-05 01.19.07.png补全&退出

字符类型

截屏2024-03-19 00.26.50.png
截屏2024-03-19 00.31.17.png

枚举类型和集合类型

截屏2024-03-19 00.41.43.png
非范围内的值,传入为空

完整性约束

约束条件not null 与 default

截屏2024-03-20 01.21.00.png截屏2024-03-20 01.21.26.png

约束条件unique key

截屏2024-03-20 01.26.08.png截屏2024-03-20 01.26.57.png截屏2024-03-20 01.29.19.png截屏2024-03-20 01.32.07.png

约束条件primary key

截屏2024-03-27 01.09.18.png截屏2024-03-27 01.10.42.png

约束条件auto_increment

自增长字段必须为key。
截屏2024-03-27 01.14.47.png
可以不用传自增长字段,也可以传(会从上一条记录自增长 )。
截屏2024-03-27 01.16.30.png
截屏2024-03-27 01.23.56.png
截屏2024-03-27 01.29.19.png
truncate会将自增长字段索引一起删除,不会导致重新插入值依然沿着上次的记录增长。

约束条件之foreign key

截屏2024-03-27 01.39.59.png截屏2024-03-27 01.42.56.png截屏2024-03-27 01.45.28.png截屏2024-03-27 01.53.30.png
想要直接删除被关联表字段,关联表字段需要增加约束条件,删除同步和更新同步。
截屏2024-03-27 01.50.54.png

表关系

多对一截屏2024-03-29 00.43.30.png

多对多

截屏2024-03-29 00.19.20.png

一对一截屏2024-03-29 00.42.45.png

截屏2024-03-29 00.38.07.png

数据操作

截屏2024-03-29 00.46.03.png截屏2024-03-29 00.49.34.png截屏2024-03-29 00.49.48.png

单表查询

image.png截屏2024-03-29 01.05.01.png

多表查询

where约束

截屏2024-03-30 01.39.19.png截屏2024-03-30 01.42.28.png

group by分组

截屏2024-03-30 01.57.52.png截屏2024-03-30 01.56.48.png截屏2024-03-30 01.59.54.png截屏2024-03-30 02.00.32.png

having过滤截屏2024-03-31 00.52.43.png

截屏2024-03-31 00.55.04.png

order by排序

limit限制条数截屏2024-03-31 01.22.19.png截屏2024-03-31 01.22.38.png

正则查询

截屏2024-04-01 00.24.19.png

连表操作截屏2024-04-01 00.38.17.png

执行顺序

截屏2024-04-01 00.47.13.png

子查询

截屏2024-04-03 00.34.48.png截屏2024-04-03 00.36.45.png

权限管理

截屏2024-04-11 01.35.29.png

Navicat使用

课件里

pymysql模块基本使用

截屏2024-04-11 23.43.05.png 截屏2024-04-11 23.53.53.png

pymysql模块之sql注入

--➕空格 会注释后续内容
两种攻击注入方式
截屏2024-04-11 23.56.42.png
截屏2024-04-11 23.58.31.png
使用模块内置拼接解决
截屏2024-04-12 00.02.35.png

pymysql模块之增删改查

插一行
截屏2024-04-12 00.06.03.png
插多行,其他操作类似
截屏2024-04-12 00.07.16.png
查询一行
截屏2024-04-12 00.09.31.png
修改游标为字典游标,以字典形式返回
截屏2024-04-12 00.11.38.png
查询多行
截屏2024-04-12 00.12.59.png
重复查询
截屏2024-04-12 00.15.02.png截屏2024-04-12 00.16.11.png
查询插入的第一条记录的自增id
截屏2024-04-12 00.19.11.png

MySQL内置功能介绍

视图(虚拟表)-只有表结构,没有表数据

可扩展性比较差,只是方便查询

触发器

截屏2024-04-12 23.38.49.png

delimiter定义结束符号,防止then后面的SQL语句的分号导致提前结束

截屏2024-04-12 23.39.15.png截屏2024-04-12 23.41.02.png

存储过程(内置功能的总和)-有点像封装函数

无参存储过程
截屏2024-04-12 23.47.56.png这里没有下划线callproc
截屏2024-04-12 23.47.33.png
有参存储过程
必须表明传入还是传出参数,以及类型
截屏2024-04-12 23.56.41.png最后是p2_2,写错了
截屏2024-04-12 23.52.40.pngmysql示例
截屏2024-04-12 23.58.36.pngpython示例

应用程序和数据库结合使用

截屏2024-04-13 00.07.02.png

事务-一堆SQL一起执行-原子操作,要么都成功,一个失败都失败

截屏2024-04-13 00.09.13.pngcommit执行完才真正修改了表
声明结束符号,再定义一个存储过程,先定义两种异常,在定义一个事务,在设定一个返回值
截屏2024-04-13 00.13.53.png

函数与流程控制

截屏2024-04-13 00.18.36.png截屏2024-04-13 00.18.50.png

标签:入门,t1,MySQL,db1,table,查询,id,name
From: https://www.cnblogs.com/matthew9/p/18132607

相关文章

  • gRPC入门学习之旅(六)
    gRPC入门学习之旅(一)gRPC入门学习之旅(二)gRPC入门学习之旅(三)gRPC入门学习之旅(四)gRPC入门学习之旅(五) 3.3、客户端编译生成GRPC类1.在“解决方案资源管理器”中,使用鼠标左键选中项目名称“Demo.Grpc.Cmd”,然后单击鼠标右键,在弹出的快捷菜单中选择“重新生成”......
  • 搭建一个免费的,无限流量的Blog----github Pages和Jekyll入门
    喜欢写Blog的人,会经历三个阶段。第一阶段,刚接触Blog,觉得很新鲜,试着选择一个免费空间来写。第二阶段,发现免费空间限制太多,就自己购买域名和空间,搭建独立博客。第三阶段,觉得独立博客的管理太麻烦,最好在保留控制权的前提下,让别人来管,自己只负责写文章。大多数Blog作......
  • flask之ssti模版注入从零到入门
    前言在学习ssti模版注入的时候,发现国内文章对于都是基于python基础之上的,对于基础代码讲的较少,而对于一些从事安全的新手师傅们,可能python只停留在写脚本上,所以上手的时候可能有点难度,毕竟不是搞pythonflask开发。就本人学习ssti而言,入手有点难度,所以特写此文,对于一些不需要深......
  • MySQL事务状态判断
    MySQL事务状态判断前置MySQL的默认隔离级别是:可重复读(REPEATABLEREAD)可重复读隔离级别下,事务中的SELECT操作会看到快照数据,也就是事务开始时刻的数据状态。此隔离级别可以防止脏读和不可重复读,但可能会有幻读的问题出现。问题描述表结构createtabledjj(namev......
  • MySQL 04-EMOJI 表情与 UTF8MB4 的故事
    拓展阅读MySQLViewMySQLtruncatetable与delete清空表的区别和坑MySQLRulermysql日常开发规范MySQLdatetimetimestamp以及如何自动更新,如何实现范围查询MySQL06mysql如何实现类似oracle的mergeintoMySQL05MySQL入门教程(MySQLtutorialbook)MySQL04-E......
  • linux环境安装——mysql集群安装复习——主从复制
    1、首先安装mysql: mkdir-p/soft/mysql8mkdir-p/evir/mysql8执行上传文件操作rpm-qa|grepmariadb查询是否有这个文件rpm-e--nodepsmariadb-libs进行删除rpm-qa|grepmariadb查询这个文件是否删干净tar-xf/soft/my......
  • SQL SERVER 从入门到精通 第5版 第三篇 高级应用 第10章 存储过程 读书笔记
    第10章存储过程 >.存储过程概述存储过程(storedprocedure)是预编译SQL语句的集合,这些语句存储在一个名称下并作为一个单元来处理.存储过程取代了传统的逐条执行SQL语句的方式.一个存储过程中可以包含增删改查等一系列SQL语句,当这个存储过程被调用时,这些操作也......
  • mysql-子查询的学习
    子查询由一个具体的需求,引入子查询谁的工资比Abel的高SELECT*fromemployeesWHEREsalary>(SELECTsalaryFROMemployeesWHERElast_name='Abel')--自连接SELECTe2.*......
  • MySQL数据库无法远程连接的解决办法
    MySQL数据库无法远程连接的解决办法 远程登陆数据库的时候出现了下面出错信息:ERROR2003(HY000):Can'tconnecttoMySQLserveron'xxx.xxx.xxx.xxx',经过今天下午的反复纠结,关于MySql数据库无法远程连接的问题可以归结为以下几点:1).没有授予相应的......
  • mysql 索引设计原则
    适合添加索引的情况1.字段的数值有唯一性的限制索引本身可以起到约束的作用,比如唯一索引、主键索引都可以起到唯一性约束的,因此我们在创建数据表时,如果某个字段时唯一的,就可以直接创建唯一性索引或主键索引。不要以为唯一索引影响了insert的速度,这个速度损耗可以忽略不计,单体......