mySQL学习总结及概要

 

目录

 

前言:

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

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

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

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

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

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

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

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

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

10. 约束:

11.多表设计:

12.多表查询:

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

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

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

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

17.能够说出事务的作用

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

19.能够说出JDBC的作用

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

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

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

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

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

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

26.能够获取Connection对象


前言:

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);

猜你喜欢

转载自blog.csdn.net/wanghaoyingand/article/details/125287569
今日推荐