• MySQL数据库基础


    数据库基础


    什么是数据库?

    数据库是保存有组织的数据的容器(通俗来说,就是可以保存在硬件设备上的文件)。注意与数据库管理系统(DBMS)的区别,我们不是直接访问数据库,而是使用数据库管理系统对数据库进行访问。


    什么是SQL?

    SQL是一种结构化查询语言,用来与数据库通信的语言。


    什么是MySQL?

    前面介绍了数据库和SQL,数据的所有存储、检索、管理是由数据库管理软件完成的。MySQL就是一种数据库管理软件。

    说白了我们平时做的工作就是:在MySQL管理软件中使用SQL语言与数据库进行通信(一般包括数据库的增删改查)。


    什么是表?

    表是某种特定类型数据的结构化清单。

    同一个数据库下的表,名字不能相同;不同数据库下的表,名字可以相同;

    列:表中的一个字段;行:表中的一条记录;


    什么是主键?

    能够唯一区分每一行的一列或多列

    例如,在学校里面每一个学生有且仅有一个学号,所以通过学号就可以直接定位一个学生,所以学号可以作为主键,但是名字不可以,因为会有重名的情况发生。

    注意:主键可以是一列,也可以多列的组合(使用多列组合作为主键时,一般是因为表中的任意一列都不能确定一条记录,而多列组合一般可以)

    表的任何一列都可以作为主键,只要满足以下条件:

    • 1. 任意两行都不具有相同的主键
    • 2. 每一行都有一个主键值,主键值不得为NULL

    建议:

    • 总是定义主键
    • 不更新主键列中的值
    • 不重用主键列中的值
    • 不在主键列中使用可能会更改的值

     

    事务处理


    什么是事务?

    事务通俗来说就是我们需要做的事情,例如,你使用支付宝转账就是事务。

    在MySQL里面是完成一项事务即表现为执行一系列指令,最终达到完成事务的目的。


    事务有什么特性?

    • A: 原子性
    • C: 一致性
    • I: 隔离性
    • D: 持久性

    MySQL哪种引擎支持事务?

    • Innodb(也是推荐的,最常用的引擎) 
    • NDB Cluster

    有关事务的几个关键词:

    START TRANSACTION: 事务,表示开始一项事务;

    ROLLBACK: 回滚,撤销指定SQL语句的执行过程;

    COMMIT: 提交,将结果写入数据库表;

    SAVEPOINT: 保留点,指设置的事务占位符,与ROLLBACK配合使用;


    ROLLBACK可以回滚一切语句吗?

    • ROLLBACK只可以在执行START TRANSACTION指令后使用,即只可以在事务中使用;
    • ROLLBACK可以回滚INSERT , UPDATE, DELETE指令
    • ROLLBACK不可以回滚DROP, CREATE, SELECT指令

     参考文章:

    对mysql事务提交、回滚的错误理解

    使用JDBC进行数据库的事务操作

    检索数据


     检索一列: 

    SELECT column_name FROM table_name;

    检索多列:

    SELECT column1_name, column2_name, column3_name FROM table_name;

    检索所有列:

    SELECT * FROM table_name;

    限制检索结果的行数

    SELECT column_name FROM table_name
    
    LIMIT M, N ;

    检索从第M行开始的N行数据(注意: 数据库表从第0行开始, LIMIT 0, 1 表示检索第0行数据

    DISTINCT限制:

    SELECT DISTINCT column_name FROM table_name;

    表示检索column_name字段不重复的列

    注意:当使用DISTINCT检索多列数据时,DISTINCT应用于所有列。

     SELECT DISTINCT a,b,c FROM table;   -- 此时是将a,b,c三列所有不同的组合全部列出来,而不仅仅只是DISTINCT a 


  • 相关阅读:
    怎样整理房间
    拙劣的外部变量
    鸡窝里飞出伪凤凰
    flag标志什么?哦,它标志代码馊了——(三)
    边界测试——让BUG现形
    static的滥用与变态的阉割
    无知乱吃药
    flag标志什么?哦,它标志代码馊了——(一)
    flag标志什么?哦,它标志代码馊了——(二)
    半身不遂和粗中有细
  • 原文地址:https://www.cnblogs.com/iwangzhengchao/p/10102329.html
Copyright © 2020-2023  润新知