mySQL学习总结及概要

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: mySQL学习总结及概要

前言:


mySQL的知识比较独立,也比较散乱,本篇文章主要目的是以最少的文字回顾整个MySQL的知识,用来查漏补缺的,对于不清楚的地方好针对性的去强化巩固。

1.能够说出数据库的作用


   存储数据

2.能够对使用SQL创建、删除数据库


   创建:

       create database 数据库名 character set 编码表

           --mysql中utf8.不是utf-8

   删除:

       drop database 数据库名;

   使用数据库:use 数据库名

   查看正在使用的数据库:select database();

3.能够使用SQL对表进行增、删、改、查操作


   增: create table 表名;

   删: drop table 表名

   改:alter table 表名 。。。。

   查:show tables;

4.能够使用SQL对表中数据增、删、改操作


   增: insert into 表名(字段名,...) values(值)   或者  insert into 表名 values(值)

 批量增加:insert into 表名 values(值), (值),(值)...

   删: delete from 表名 where 条件

   改:update 表名 set 字段名=字段值,字段名=字段值,字段名=字段值...  where 条件

5.能够对使用SQL对表中数据基础查询操作


   select * from 表名


6.能够对使用SQL对表中数据条件查询操作


   select * from 表名  where 条件

7.能够对使用SQL对表中数据分组查询操作


   select * from 表名  where 先筛选条件 group by 字段名,字段名,... having 分组后筛选条件

8.能够对使用SQL对表中数据排序查询操作


   select * from 表名  where 先筛选条件 group by 字段名,字段名,... having 分组后筛选条件 order by 字段名 asc(升序,默认)/desc(降序)

9.能够对使用SQL对表中数据分页查询操作


   select * from 表名  where 先筛选条件 group by 字段名,字段名,... having 分组后筛选条件 order by 字段名 asc(升序,默认)/desc(降序) limit 起始索引,每页显示数据行数

10. 约束:


      主键约束:唯一+非空  primary key  ,
                主键自动增长:auto_increment
            非空约束:not null
            唯一约束:unique
            默认约束:添加数据不给值,使用默认值。 default
            外键约束:使用在多表中,维护表关系。
                [constraint 外键约束名] foreign key(作为外键的字段名) references 主表(主键);
                constraint fk_order_id foreign key(order_id) references tb_order(id);

11.多表设计:


     表关系:

           1)一对一:在任意一方将另一方的主键作为外键

           2)一对多:将一方的主键作为多方的外键

           3)多对多:创建中间表,在中间表中将主表的主键作为外键

12.多表查询:


  1)连接查询:

           I:内连接查询:

               a:隐式内连接  select * from 表名1,表名2,... where 条件

               b:显示内连接  select * from 表名1 inner join 表名2 on 条件

           II:外连接查询

               a:左外连接 :查询表公共部分和左表的全部内容

                     select * from 表名1 left outer join 表名2 on 条件

               b:右外连接 :查询表公共部分和右表的全部内容

                     select * from 表名1 right outer join 表名2 on 条件

                 

       2)子查询:

13.能够为表添加主键约束、非空约束、唯一约束


   字段名 数据类型 primary key -- 主键约束

   字段名 数据类型 not null -- 非空约束

   字段名 数据类型 unique -- 唯一约束

14.能够为表添加外键约束


   [constraint 外键约束名] foreign key(中间表的外键字段名) references 主表(主键)

15.能够说出表与表的三种关系


   一对一:将任意一方的主键作为另一方的外键

   一对多:将一方的主键作为多方的外键

   多对多:创建中间表维护两张主表的关系,在中间表中至少含有两个主表的主键作为外键

16.能够使用SQL从多张表中查询数据


  子查询:

       1.单行单列:使用比较运算符作为条件

       2.多行单列:使用in作为条件

       3.多行多列:作为临时表,使用as起别名,可以省略as

   连接查询:

       1.确定几张表

       2.分析条件

       3.分析查询的字段

17.能够说出事务的作用


   主要使用针对增删改语句,要成功都成功,要失败都失败

18.能够使用SQL开启事务、提交事务、回滚事务


   start transaction; -- SQL开启事务

   commit; -- 提交事务

   rollback; -- 回滚事务

19.能够说出JDBC的作用


   使用java代码操作数据库 java database connection

20.能够使用Connection对象管理事务


   conn.setAutoCommit(false); 开启事务

   conn.commit();提交事务

   conn.rollback();回滚事务

21.能够使用JDBC对数据库进行增删改查操作


   1)注册驱动

   2)获取连接

   3)获取发送sql语句的预编译对象

   4)发送sql executeUpdate()

   5) 处理结果

   6)释放资源

22.能够使用ResultSet对象遍历结果集


   while(rs.next()){

       rs.getXxx(第几列或者字段名,如果有别名只能书写别名)

   }

23.能够使用PreparedStatement防止SQL注入


   PreparedStatement pst = conn.prepareStatement(sql);

   给占位符赋值 pst.setXxx(第几个占位符,实际值);

   pst.executeUpdate(); 增删改

   pst.executeQuery();查询

24.能够说出数据库连接池作用


   优化获取连接,将连接放到连接池中,使用的时候直接从连接池中获取连接,使用完毕将连接放到连接池中

25.能够使用Driud数据库连接池获取Connection对象


创建属性集对象

   Properties p = new Properties();

   加载配置文件

   p.load(new FileInputStream(配置文件相对路径));

   获取德鲁伊连接池对象

   DataSource ds=DruidDataSourceFactory.createDataSource(p);

   获取连接

   Connection conn = ds.getConnection();

26.能够获取Connection对象


   DriverManager.getConnection(url,username,password);

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
分布式计算 关系型数据库 MySQL
大数据-88 Spark 集群 案例学习 Spark Scala 案例 SuperWordCount 计算结果数据写入MySQL
大数据-88 Spark 集群 案例学习 Spark Scala 案例 SuperWordCount 计算结果数据写入MySQL
48 3
|
5月前
|
SQL 关系型数据库 MySQL
关于MySQL数据库的学习指南总结
【6月更文挑战第17天】MySQL是流行的关系型DBMS,适合各种应用。学习要点包括安装配置、数据类型、SQL(如SELECT、INSERT)、关系模型、表设计、SQL查询(如WHERE、ORDER BY)、事务处理、用户管理、性能优化和高级技术如存储过程、触发器。了解ACID特性,使用索引和内存优化提升性能,通过备份恢复确保数据安全。不断学习新技术以提升技能。
91 3
|
28天前
|
关系型数据库 MySQL Java
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
这篇文章是关于如何使用Django框架配置MySQL数据库,创建模型实例,并自动或手动创建数据库表,以及对这些表进行操作的详细教程。
60 0
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
|
29天前
|
Java 关系型数据库 MySQL
springboot学习五:springboot整合Mybatis 连接 mysql数据库
这篇文章是关于如何使用Spring Boot整合MyBatis来连接MySQL数据库,并进行基本的增删改查操作的教程。
49 0
springboot学习五:springboot整合Mybatis 连接 mysql数据库
|
29天前
|
Java 关系型数据库 MySQL
springboot学习四:springboot链接mysql数据库,使用JdbcTemplate 操作mysql
这篇文章是关于如何使用Spring Boot框架通过JdbcTemplate操作MySQL数据库的教程。
22 0
springboot学习四:springboot链接mysql数据库,使用JdbcTemplate 操作mysql
|
1月前
|
关系型数据库 MySQL 数据库
mysql关系型数据库的学习
mysql关系型数据库的学习
17 0
|
1月前
|
Kubernetes 关系型数据库 MySQL
k8s学习--利用helm部署应用mysql,加深helm的理解
k8s学习--利用helm部署应用mysql,加深helm的理解
156 0
|
2月前
|
SQL 关系型数据库 MySQL
学习MySQL操作的有效方法
学习MySQL操作的有效方法
43 3
|
2月前
|
SQL 关系型数据库 MySQL
如何学习 MySQL?
如何学习 MySQL?
37 3
|
3月前
|
SQL 关系型数据库 MySQL
学习mysql基础操作
【8月更文挑战第20天】学习mysql基础操作
39 1

推荐镜像

更多
下一篇
无影云桌面