数据库-MySQL 学习笔记

[TOF]mysql

SQL

1 数据库的基本概念

  1. DataBase:DBsql

  2. 数据的仓库。用于存储和管理数据的仓库数据库

  3. 特色:①持久化存储数据,数据就是一个文件系统安全

    ​ ②方便存储和管理数据oop

    ​ ③使用了统一的方式操做数据库——SQL 大数据

  4. 数据库软件spa

    • Oracle
    • MySQL
    • IBM DB2
    • Hive
      • Facebook开发
      • 基于Hadoop
      • 类SQL语法
      • 执行延迟高,适合处理大数据、对实时性要求低的场合

2 SQL

  1. 什么是SQL?code

    ​ *Sructured Query Language :结构化查询语言对象

    ​ *定义了全部关系型数据库的规则ip

  2. SQL通用语法

    1. SQL单行或多行书写,以==分号==结尾

    2. MySQL不区分大小写,关键字建议大写

    3. 单行注释: -- 注释内容

      多行注释: /* 注释内容 */

    mysql> show databases; -- 注释内容 
    mysql> show databases; /* 注释内容 */
  3. SQL分类

    • DDL(Data Definition Language)数据定义语言

      用来定义数据库对象:数据库、表、列等。

      关键字:create、drop、alter等

    • DML(Data Manipulation Language)数据操做语言

      用来对数据库中表的数据进行增删修改。

      关键字:insert、deleta、update等

    • DQL(Data Query Language)数据查询语言

      用来查询数据库中表的记录(数据)。

      关键字:select、where等

    • DCL(Data Control Language)数据控制语言

      用来定义数据库的访问权限和安全级别,及建立用户。

      关键字:GRANT、REVOKE等

3 DDL:操做数据库、表

3.1 操做数据库:CRUD

  1. Create:建立

    mysql> CREATE DATABASE DB1; -- 建立数据库
    mysql> create database if not exists DB1; -- 判断建立数据库
    mysql> create database if not exists DB3 character set gbk; -- 建立指定字符集的数据库
  2. Retrieve:查询

    mysql> SHOW DATABASES; -- 查询全部数据库的名称
    mysql> SHOW CREATE DATABASE mysql; -- 查询某个数据库的字符集(UTF-8);查询某个数据库的建立语句
  3. Update:修改

    mysql> alter database db4 character set utf8; -- 修改字符集
  4. Delete:删除

    mysql> drop database db4; -- 删除数据库
    mysql> drop database if exists db3; -- 判断删除数据库
  5. 使用数据库

    mysql> select database(); -- 查询当前使用的数据库名称
    mysql> use db1; -- 使用数据库

3.2 操做表:CRUD

  1. Create:建立

    ==数据类型==:

    • int:整数类型
    • double(5,2):小数类型,共5位、2位小数,最大999.99
    • date:日期,包含年月日 yyyy-MM-dd
    • datetime:日期,包含年月日时分秒 yyyy-MM-dd HH:mm:ss
    • timestamp:时间戳,包含年月日时分秒 yyyy-MM-dd HH:mm:ss
      • 若是未来不给这个字段赋值或NULL,则默认赋值当前系统时间
    • varchar(20):字符串,最大20个字符
      • zhangshan:8个字符
      • 张三:2个字符
    mysql> create table student( -- 表名:student
        -> id int, -- 定义列名和数据类型
        -> name varchar(32),
        -> age int,
        -> score double(4,1),
        -> birthday date,
        -> insert_time timestamp -- 这里别加,
        -> );
  2. Retrieve:查询

    mysql> use mysql;
    mysql> show tables; -- 查询全部表
    mysql> desc db; -- 查询表结构
  3. Update:修改

    mysql> alter table student rename to stu; -- 修改表名
    mysql> show create table stu; -- 查询表的字符集
    mysql> alter table stu character set gbk; -- 修改表的字符集
    mysql> alter table stu add gender varchar(10); -- 添加一列
    mysql> alter table stu change gender sex varchar(20); -- 修改列名和类型
    mysql> alter table stu modify sex varchar(10); -- 只修改列的类型
    mysql> alter table stu drop sex; -- 删除一列
  4. Delete:删除

    mysql> drop table stu; -- 删除表
    mysql> drop database if exists stu; -- 判断删除表

4 DML:增删改表中数据

  1. 添加数据

    mysql> insert into stu(id,name,age) values(1,'张无忌','18'); 
    mysql> insert into stu values(2,'赵敏',17,99.9,NULL,NULL);
    • varchar类型要打“”
    • 表名后若不定义列名,则默认给全部列添加值
  2. 删除数据

  3. 修改数据

5 DQL:查询表中记录

mysql> select * from stu;
相关文章
相关标签/搜索