学习MySQL数据库这一篇就够了!!!

数据库概论:

目录

数据库概论:

数据库

连接数据库软件

数据库操作:

库相关的SQL

数据库相关SQL 回顾:

表相关SQL

表相关的SQL回顾:

数据相关SQL    

数据相关SQL回顾:

注:基础已经结束,进阶篇:详细查询 


数据库

  • 学习数据库主要学习的就是如何对数据进行增删改查.
  • DBMS: DataBaseManagementSystem,数据库管理系统(数据库软件),DBMS负责管理数据库文件, 负责将数据保存到数据库文件中.
  • 常见的DBMS有:
    • MySQL: Oracle公司产品, MariaDB其实就是MySQL的一个分支 , MySQL市占率排名第一 
    • Oracle: Oracle公司产品, 闭源, 性能最强价格最贵. 市占率第二
    • SQLServer: 微软公司产品,闭源 , 市占率第三
    • DB2: IBM公司产品,闭源 
    • SQLite: 轻量级数据库, 安装包只有几十k , 只具备最基本的增删改查功能

连接数据库软件

  • windows: 开始菜单-MySQL->MySQL->输入密码

    ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 
    这是密码错误的提示
    
  • linux/mac os: 桌面空白处右键->打开终端-> 输入: 

    mysql -uroot -p 回车  输入密码 再回车 
  • 先建库再建表, 数据是保存在表当中的, 数据是保存在表中的, 而表是存在于数据库中.
  • 数据库文件类似于Excel文件

数据库操作:

库相关的SQL

  • 查询所有数据库

    • 格式: show databases;
  • 创建数据库

    • 默认字符集格式: create database 数据库名;

    • 指定字符集格式: create database 数据库名 charset=utf8/gbk;

    • 举例:

      create database db1;
      create database db2 charset=utf8;
      create database db3 charset=gbk;
      show databases;
      
  • 查询数据库信息

    • 格式: show create database 数据库名;

    • 举例:

      show create database db1;
      show create database db2;
      show create database db3;
      
  • 删除数据库

    • 格式: drop database 数据库名;

    • 举例:

      drop database db2;
      drop database db3;
      
  • 使用数据库

    • 操作表相关的SQL语句或数据相关的SQL语句之前必须使用了某一个数据库

    • 格式: use 数据库名;

      use db1;
      
  • 创建 mydb1和mydb2 数据库 字符集分别为utf8和gbk

    create database mydb1 charset=utf8;
    
    create database mydb2 charset=gbk;

  • 查询所有数据库检查是否创建成功

    show databases;

  • 检查两个数据库的字符集是否正确

    show create database mydb1;
    
    show create database mydb2;

  • 先使用mydb2 再使用 mydb1

    use mydb1;
    
    use mydb2;

  • 删除两个数据库

    drop database mydb1;
    
    drop database mydb2;

  • 必须使用了某个数据库之后再执行表相关的SQL 

    use db1;

  • 数据库相关SQL 回顾:

    • 查询所有: show databases;
    • 创建: create database db1 charset=utf8/gbk;
    • 查询信息: show create database db1;
    • 删除: drop database db1;
    • 使用: use db1;

表相关SQL

  • 创建表

    • 格式: create table 表名(字段1名 类型,字段2名 类型)charset=utf8/gbk;

    • 举例:

      create table person(name varchar(50),age int)charset=utf8;
      创建学生表student 字段:id int,名字,chinese int,math int, english int 字符集gbk
      create table student(id int,name varchar(50),chinese int,math int,english int)charset=gbk;
      
  • 查询所有表

    • 格式: show tables;
  • 查看表信息

    • 格式: show create table 表名;

      show create table person;

  • 查看表字段

    • 格式: desc 表名;

      desc student;

  • 删除表

    • 格式: drop table 表名;

      drop table student;

  • 修改表名

    • 格式: rename table 原名 to 新名;

      rename table person to per;

  • 添加表字段

    use db1;
    create table emp(name varchar(30));
    alter table emp add age int;
    alter table emp add id int first;
    alter table emp add gender varchar(1) after name;
    
    • 最后面添加格式: alter table 表名 add 字段名 类型;

    • 最前面添加格式: alter table 表名 add 字段名 类型 first;

    • 在xxx字段后面添加格式: alter table 表名 add 字段名 类型 after xxx;

    • 举例:

  • 删除表字段

    • 格式: alter table 表名 drop 字段名;

      alter table emp drop age;

  • 修改表字段

    • 格式: alter table 表名 change 原名 新名 新类型;

      alter table emp change gender age int;

  • 表相关的SQL回顾:

    • 创建表: create table t1 (name varchar(20),age int)charset=utf8/gbk;
    • 查询所有: show tables;
    • 查询信息: show create table t1;
    • 表字段: desc t1;
    • 删除表: drop table t1;
    • 修改表名: rename table t1 to t2;
    • 添加表字段: alter table 表名 add 字段名 类型 first/after xxx;
    • 删除表字段: alter table 表名 drop 字段名;
    • 修改表字段: alter table 表名 change 原名 新名 新类型;

数据相关SQL    

  • 插入数据
    • ​​​​全表插入格式: insert into 表名 values(值1,值2);
    • 指定字段插入格式: insert into 表名(字段1名,字段2名) values(值1,值2);

    • 批量插入: 在values后面写多组值通过逗号分割

    • 举例: 

      insert into person values("Tom",18);
      
      insert into person(name) values("Jerry");
      
      insert into person values("LiLei",20),("Hanmeimei",30);

    • 中文问题:

      insert into person values("刘德华",50);

      如果执行上面SQL语句提示错误并在错误信息中显示16进制内容执行以下SQL语句

      set names gbk;

  • 查询数据

     举例:
    • select name from person; //所有名字
      select name,age from person; //查询所有名字和年龄
      select * from person; //查询所有字段信息
      select * from person where name="Tom";
      select name from person where age<=20;

    • 格式: select 字段信息 from 表名 where 条件;
  • 修改数据
    • 格式: update 表名 set 字段名=值,字段名=值 where 条件;
      • 举例:

        update person set name="汤姆" where name='Tom';
        
        update person set age=50 where name='Jerry';

  • 删除数据

    • 举例:

      delete from person where name="汤姆";
      
      delete from person where age=50;
      
      delete from person where age<30;
      
      delete from person;

    • 格式: delete from 表名 where 条件;

数据相关SQL回顾:

  • 插入数据: insert into 表名(字段1名,字段2名) values(值1,值2),(值1,值2);
  • 查询数据: select 字段信息 from 表名 where 条件;
  • 修改数据: update 表名 set xxx=xxx,xxx=xxx where 条件;
  • 删除数据: delete from 表名 where 条件;

注:前置基础已经结束,进阶篇:详细查询 https://blog.csdn.net/CNShork/article/details/120564586

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值