广告
返回顶部
首页 > 资讯 > 数据库 >MySQL数据库基础笔记
  • 811
分享到

MySQL数据库基础笔记

MySQL数据库基础笔记 2019-07-29 08:07:08 811人浏览 无得
摘要

数据库 数据库就是存储和管理数据的仓库,用户可以对数据库中的数据进行增删改查等操作。 数据库的分类 关系型数据库(oracle、Mysql、sqlite等) 非关系型数据库(Redis、mongoDB等) mysql简介 M

数据库

数据库就是存储和管理数据的仓库,用户可以对数据库中的数据进行增删改查等操作。

数据库的分类

mysql简介

MySQL是一个关系型数据库,由MySQLAB公司开发,目前属于Oracle旗下。

特点:开源、支持大型数据库、使用标准SQL、适用于多种操作系统以及提供多种编程语言接口。

安装(ubuntu中):

sudo apt-get install mysql-server
sudo apt-get install mysql-client

MySQL客户端连接服务端:

mysql -uusername -ppassWord

退出:exit、quit

常用数据类型

int、bit、decimal、varchar、char、date、time、datetime、enum、text

常用数据约束

主键primary key、非空not null、唯一unique、默认default、外键foreign key

数据库设计三范式

  1. 原子性

  2. 满足1,表必须有主键,非主键字段必须完全依赖于主键

  3. 满足2,非主键必须直接依赖于主键

E-R模型

实体-关系模型,E-R模型就是描述数据库存储数据的结构模型

  • 一对一

  • 一对多

  • 多对多

常用SQL语句

  1. 基本语句

    • 查看所有数据库 show databases;

    • 创建数据库 create datebase database_name charset=utf8;;

    • 使用数据库 use database_name;

    • 查看当前使用的数据库 selecet database();

    • 删除数据库 drop database database_name;

    • 查看当前库中所有表 show tables;

    • 建表 create table table_name(id int unsigned primary key auto_increment, name varchar(30) not null, age tinyint unsigned not null);

    • 修改表

      • 添加字段 alter table table_name add sexy bit not null;

      • 修改字段类型 alter table table_name modify sexy tinyint unsigned not null;

      • 修改字段名 alter table table_name change sexy gender tinyint unsigned not null;

      • 删除字段 alter table table_name drop gender;

      • 设置外键 alter table table_name add foreign key(cls_id) references classes(id);

      • 删除外键 alter table table_name drop foreign key cls_id;

    • 查看建表(库)SQL语句 show create table(database) table_name(database_name);

    • 删除表 drop table table_name

  2. 表数据的基本增删改查:

      • insert into table_name values();

      • insert into table_name(name) values("a");

      • insert into table_name values(),(),();

    • 删:delete from table_name where id=33;

      • 逻辑删除,设置一个bit类型字段表示是否删除

    • 改: update table_name set name="c", age=18 where id=222;

      • select * from table_name;

      • select name,age from table_name;

  3. as关键字(起别名)

    • select t.name,t.age from table_name as t;

  4. distinct关键字(去重)

    • select distinct name from table_name;

  5. where条件查询

    • select * from table_name where id<10 and age>18;

  6. 模糊查询

    • select * from table_name where name like "郭%" or name like "郭威_";

  7. 范围查询

    • select * from table_name where id between 5 and 10 or id in (3, 19);

  8. 空判断查询

    • select * from table_name where gender is null;

    • ifnull(age,18)判断字段是否为空,为空则使用提供值

  9. 排序查询

    • select * from table_name order by age desc;

      desc表示倒序排序,ase升序排序,默认升序

  10. 分页查询

    • select * from table_name limit start,count;

  11. 聚合函数查询

    count()、max()、min()、sun()、avg()、round(avg(age),保留小数位)

    • select avg(age) from table_name where gender=0;

  12. 分组查询

    • select gender,avg(gender) from table_name group by gender with rollup;

      with rollup 在最后新增一行查询的记录

    • select gender,count(*) from table_name group by gender having count(*)>5;

      having 过滤分组数据,只用于group by

  13. 连接查询

    • 内连接

      • select name from table1 inner join table2 on table1.age = table2.age;

    • 左连接

      • left join

    • 右连接

      • right join

    • 自连接

      • select a.id,a.name from table as a inner join table as b where a.pid=b.id;

  14. 子查询

    • select * from table where age > (select avg(age) from table);

      性能较差

  15. 将查询结果插入其他表

    • insert into country(name) select hero_country from hero group by hero_country;

  16. 连接更新

    • update hero h inner join country c on h.country=c.name set h.country=c.id;

  17. 建表同时添加数据

    • create table country(id int unsigned primary key auto_increment,name varchar(30) not null)select hero_country from hero group by hero_country;

事务

事务就是一系列sql操作作为一个单元执行,要么全部执行,要么全部不执行。

  1. 事务的四大特性

    • 原子性

    • 一致性

    • 隔离性

    • 持久性

  2. MySQL中使用事务需选择InnoDB存储引擎,其他引擎不支持事务

  3. 开启事务

    • begin;

    • start transaction;

    • set autocommit=0;

      MySQL默认自动提交,该设置关闭默认提交功能

  4. 提交事务

    • commit;

  5. 回滚事务

    • rollback;

索引

  • 创建索引 alter table table_name add index name_index(name);

  • 联合索引 alter table table_name add index name_index(name,age);

  • 删除索引 alter table table_name drop index name_index;

引擎

您可能感兴趣的文档:

--结束END--

本文标题: MySQL数据库基础笔记

本文链接: https://www.lsjlt.com/news/2367.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL数据库基础笔记
    数据库 数据库就是存储和管理数据的仓库,用户可以对数据库中的数据进行增删改查等操作。 数据库的分类 关系型数据库(Oracle、MySQL、SQLite等) 非关系型数据库(Redis、MongoDB等) MySQL简介 M...
    99+
    2019-07-29
    MySQL数据库基础笔记
  • MySQL基础笔记
    创建数据库 CREATE DATABASE database_name; create database mysql_test; 删除数据库 DROP DATABASE database_name; > drop...
    99+
    2022-04-07
    MySQL基础笔记
  • 初识Oracle数据库基础笔记
    初识Oracle数据库基础知识点笔记 Oracle 数据库 Oracle → 甲骨文 Oracle数据库是一种关系型数据库,由行和列组成 数据:文字、图片、视频 DB(DataBase) 数据库: 用于存...
    99+
    2021-06-30
    初识Oracle数据库基础笔记
  • MySQL基础笔记整理
    MySQL安装和启动 Windows下安装和启动服务 下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads 安装 1 在MySQL官网下载zip文件, 2 在...
    99+
    2017-09-26
    MySQL基础笔记整理
  • mysql基础命令学习笔记
        这里不会涉及一些mysql数据库安装之类的知识,但是会将自己学习以及使用mysql一些最常用的mysql语句总结到本篇文章,作为自己的学习记录和笔记。基本的环境为CentOS 6...
    99+
    2022-10-18
  • 【MySQL】 MySQL数据库基础
    文章目录 🐱‍👓数据库的操作📌显示当前的数据库📌创建数据库🎈语法:🎈语法说明🎈示...
    99+
    2023-09-18
    数据库 mysql 基础操作 oracle
  • 【MySQL】数据库基础
    文章目录 1. 登陆选项的认识2. 什么是数据库3. 存储数据为什么不用文件?4. 见一见数据库创建数据库创建表 5. SQL语句分类6. 查看MysQL存储引擎 1. 登陆选项的认识...
    99+
    2023-10-18
    数据库 mysql
  • mysql学习笔记之基础测试
    10. 基础测试 10.1...
    99+
    2022-10-18
  • Android 基础笔记 04 篇:数据存储篇
    存储模式 Android 提供了四种存储模式: 专属空间存储:以该模式存储的数据只允许特定的应用程序访问。 共享空间存储:以该模式存储的数据,所有应用都可以访问。 首选项存...
    99+
    2022-06-06
    数据 存储 数据存储 Android
  • Python基础笔记3
    1.Python内置了很多有用的函数,我们可以直接调用。要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数abs,只有一个参数。可以直接从Python的官方网站查看文档:http://docs.python.org/3/libra...
    99+
    2023-01-31
    基础 笔记 Python
  • [PYTHON]python 基础笔记(
    10. 编写一个Python脚本问题我提出的问题是: 我想要一个可以为我的所有重要文件创建备份的程序。尽管这是一个简单的问题,但是问题本身并没有给我们足够的信息来解决它。进一步的分析是必需的。例如,我们如何确定该备份哪些文件?备份保存在哪里...
    99+
    2023-01-31
    基础 笔记 PYTHON
  • 一、MySQL数据库基础
    1.1、数据库模型  数据库由一批数据构成有序集合,这些数据被存在结构化的数据表中。数据表之间互相关联,反应客观事物间的本质联系。数据库系统提供对数据的安全控制和完整性控制。数据库的发展大致划分为...
    99+
    2022-10-18
  • MySQL学习笔记——基础与进阶篇
        目录   一、###MySQL登录和退出     二、###MySQL常用命令     三、###MySQL语法规范     四、###基础查询     五、###条件查询     六、###排序查询     七、###常...
    99+
    2017-06-14
    MySQL学习笔记——基础与进阶篇
  • 【MySQL】数据库基础知识
    文章目录 一. 什么是数据库二. 为什么要有数据库三. 数据库分类四. 数据库的基本使用1. MySQL安装2. 检查MySQL后端服务器是否启动3. 连接MySQL服务器4. 服务器,数据库...
    99+
    2023-09-03
    数据库 mysql
  • 数据库(mysql)基础操作
     声明:    1)仅作为个人学习,如有冒犯,告知速删!    2)不想误导,如有错误,不吝指教! ------------------------------------分隔符--------------------------...
    99+
    2021-09-02
    数据库(mysql)基础操作
  • MySQL数据库基础知识
    day02 MySQL数据库基础知识一、基础知识概述:    基础决定你这门课程的学习成败!只有学习好这些基础知识以后,你才能真正的运用自如。才能够对数据库有更深入的...
    99+
    2022-10-18
  • python基础知识笔记
    参考视频和资料:2022新版黑马程序员python教程,8天python从入门到精通,学python看这套就够了_哔哩哔哩_bilibili 最后有知识的思维导图!  Python入门学习 Day1 解释器:pycharm 一、Pychar...
    99+
    2023-08-31
    pycharm ide python
  • mysql学习笔记一 基础知识及DDL
    规范 一条语句要以分号(;)结束 sql可以单行和多行书写,一般通过缩进和换行书写提高代码可读性 sql的关键词一般都要全大写 分类 DDL(Data Defination Language)  数据定义语言  用于操作数...
    99+
    2019-12-24
    mysql学习笔记一 基础知识及DDL
  • 【Mysql】数据库基础与基本操作
    🌇个人主页:平凡的小苏 📚学习格言:命运给你一个低的起点,是想看你精彩的翻盘,而不是让你自甘堕落,脚下的路虽然难走,但我还能走,比起向阳而生,我更想尝试逆风翻盘。 🛸Mysql专栏:Mys...
    99+
    2023-08-16
    mysql
  • 数据库笔记
    数据库:   DDl:     创建语句     create,alter,drop等   DML:     更新数据 增删改    ...
    99+
    2017-12-31
    数据库笔记
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作