数据库学习之路

MySQL

Linux下的MySQL目录

通过查看MySQL配置文件(/etc/mysql/mysql.conf.d/mysqld.cnf)可知:# datadir= /var/lib/mysql

注释

单行注释的两种方式

1
2
SHOW DATABASES;-- 注释内容
SHOW DATABASES;# 注释内容:(MySQL)独有

多行注释

1
2
3
4
SHOW DATABASES;
/* 注释
内容*/
SHOW DATABASES;

DDL(操作数据库、表)

操作数据库

  • Create

    • 创建数据库

      1
      CREATE DATABASE IF NOT EXISTS db1 CHARACTER SET utf8;-- 创建数据库并验证是否存在,并指定编码
  • Retrieve

    • 查询数据库

      1
      2
      3
      4
      SHOW DATABASES;

      SHOW CREATE
      DATABASES db1;-- 查询某个数据库创建信息
  • Update

    • 修改数据库

      1
      ALTER DATABASES db1 CHARACTER SET GBK;-- 查询某个数据库创建信息
  • Delete
    *删除

    1
    DROP DATABASE IF EXISTS db1;
  • 使用

    • 使用数据库

      1
      USE db1;
    • 查询当前使用的数据库

      1
      SELECT DATABASE();

操作表

  • Create

    • 创建表

      1
      2
      3
      4
      5
      6
      7
      8
      9
      CREATE TABLE tb1(
      uname varchar(20),-- 字符类型,长度为20
      uheight double(5,2),-- 浮点型,长度为5,保留两位小数。该语句最大为999.99
      ubrithday date,-- 年月日,YYYY-MM-DD
      ubrithtime datetime,-- 年月日时分秒 YYYY-MM-DD HH:MM:SS
      ucreatetime timestamp,-- 时间戳,当为null或者未指定,则按系统当前时间年月日时分秒 YYYY-MM-DD HH:MM:SS
      uage int-- 最后一行没有逗号
      );

    • 创建并复制存在的表

      1
      2
      CREATE TABLE tb2 like tb1;

  • Retrieve

    • 查询表

      1
      2
      3
      -- USE db1;
      SHOW TABLES;-- 查询使用数据库中的所有表
      DESC tb1;-- 查询某个表结构
  • Update

    • 修改

      1
      2
      3
      4
      5
      6
      7
      8
      ALTER TABLE tb1 RENAME TO tab1;-- 重命名
      ALTER TABLE tab1 CHARACTER SET utf8;-- 修改字符集类型

      ALTER TABLE tab1 ADD ugender VARCHAR(5);-- 添加一列

      ALTER TABLE tab1 CHANGE ugender usex VARCHAR(20); -- 修改某列属性
      ALTER TABLE tab1 MODIFY usex VARCHAR(10);-- 修改某列类型
      ALTER TABLE tab1 DROP usex;-- 删除某列
    • 修改表字符集

    • 添加一行

    • 修改列名称

    • 删除列

      1

  • Delete
    *删除表

    1
    drop table if exists tb1; 
  • 使用

    • 使用数据库

      1
      USE db1;
    • 查询当前使用的数据库

      ```SQL
      SELECT DATABASE();

DQL(查询表的数据)

DML(增删改表的数据)

DCL(数据控制:数据库权限和级别。创建用户)