数据库基础知识(1)

Mysql(数据库管理系统) 基础知识(考研复试回顾)

  1. 登录Mysql,用户名root,登录密码123(Windows环境,Mysql Version5.5.61,另外需要熟知的是在客户端Mysql的端口号port是3306)
mysql -uroot -p123  //用户名是root 密码是123
或者不显露密码的方式:
mysql -uroot -p
    123
  1. 卸载Mysql。

    卸载Mysql的时候需要在以下几个方面都得处理掉,才能删除干净

    ①控制面板里找到Mysql程序点击Unstall

    ②找到Program Files(x86)删掉Mysql程序目录

    ③找到Program Data,继续删掉Mysql程序目录

    ④按住Win+R,输入regedit打开注册表,打开HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\EventLog\Application\Mysql右击,点击delete删除。

    只有卸载干净下次安装才能成功,否则下次安装会失败,失败的原因就是上一次Mysql没有卸载干净

    PS:环境变量指的是——系统运行一个程序,但是并不清楚改程序完整路径 ,此时系统除了会在当前目录下寻找该程序之外,还会在系统配置的环境变量中寻找当前路径下的程序。

  2. Sql、DB、DBMS分别是什么,它们之间的关系?

    DB:(DataBase,数据库在硬盘上实际是以文件的形式存在,存储在硬盘上)

    DBMS:(DataBase Managerment System)DBMS就是我们常见的数据库管理系统,即是我们这里指的Mysql,常见的有Mysql、Oracle、DB2、Sybase、sqlServer......严格来说Mysql叫做数据管理系统(DBMS),Mysql里面会有许多数据库(DB)

    SQL:SQL是一种标准通用语言,它是高级语言。学名叫做结构化查询语言,标准SQL适用于所有数据库管理系统。

    SQL语言在执行的时 候,实际上会由DBMS自动进行编译,编译完成后再由DBMS完成执行(这一点不同于C++,C++的编译过程至少需要我们认为操作一下,Mysql相对于就比较高度集成,相对智能化一点)

    程序员写SQL语句,利用DBMS,操纵DB;或者说程序员在DBMS里面写SQL语句,来对DB进行增删改查

  3. 什么是表?

    表:table。表示数据库的基本单元,数据库中的数据是由表来组成,采用表的形式组成数据是因为可读性强。

    表的行:被称为数据/记录(data)

    表的列:被称为字段(column) 字段的属性包括:字段名称、字段数据类型、字段约束(比如不能为空)、字段长度

  4. 学习数据库主要核心是学习SQL语句,即增删改查。SQL语句的分类

    • DQL(query,数据查询语言):查询语句,凡是select都是DQL
    • DML(manipulate,数据操纵语言):insert、delete、update,即对表中数据的增删改
    • DDL(difinition,数据定义语言):create、drop 、alter,即对的增删改
    • TCL(事务控制语言,transaction control):commit提交事务,rollback回滚事务
    • DCL(数据控制语言):grant授权、revoke撤销权限
  5. 导入初始化数据

    1. 登录Mysql

      mysql -uroot -p123
      
    2. 输入Mysql命令,查看有哪些数据库

      show databases;            (注意这个不是标准SQL语句,而是Mysql命令行)
      

      +--------------------+
      | Database |
      +--------------------+
      | information_schema |
      | mysql |
      | performance_schema |
      | test |
      +--------------------+ //上面4个数据库是Mysql自带默认的数据库

    3. 自己创建自己额数据库

      create database liufeng_info;     ##注意这个语句还不是标准sql语句,还是Mysql命令行
      

      +--------------------+
      | Database |
      +--------------------+
      | information_schema |
      | liufeng_info |
      | mysql |
      | performance_schema |
      | test |
      +--------------------+

    4. 使用liufeng_info数据库

      use liufeng_info;              ## 还不是标准sql语句,         还是Mysql命令行
      ## 准备切到Mysql数据库
      use mysql;                     
      
    5. 查看当前数据库中有哪些表格?

      show tables;					##列出当前数据库中的所有表格    还是Mysql命令行
      

      mysql这个数据库中自带一些表,但是我们刚刚创建liufeng_info中是没有表格的,还得创建表格

    6. 数据初始化

      mysql> source E:\BaiduNetdiskDownload\resources\bjpowernode.sql    ## 可以对一个空表进行数据初始化
      

      +------------------------+
      | Tables_in_liufeng_info |
      +------------------------+
      | dept |
      | emp |
      | salgrade | 创建数据库后没有表,经过数据初始化之后,liufeng_info里面就多了三张表

      批量执行脚本文件,就可以使用source命令。.sql脚本有时候太大,记事本打不开,可以使用source命令打开

  6. 上面我们导入的文件数据,以.sql结尾,这种文件叫做sql脚本

​ 以.sql文件结尾,并且这个文件里面编写了大量的sql语句,我们就把这个叫做.sql脚本

  1. 删除数据库

    drop database liufeng_info;             ##这还是Mysql命令行,不是SQL命令
    
  2. 查看某一个数据库里面的具体的表结构

    desc dept;                             ## 还是Mysql命令
    

    mysql> desc dept;
    +--------+-------------+------+-----+---------+-------+
    | Field | Type | Null | Key | Default | Extra |
    +--------+-------------+------+-----+---------+-------+
    | DEPTNO | int(2) | NO | PRI | NULL | |
    | DNAME | varchar(14) | YES | | NULL | |
    | LOC | varchar(13) | YES | | NULL | |
    +--------+-------------+------+-----+---------+-------+

    desc emp;
    

    mysql> desc emp;

    +----------+-------------+------+-----+---------+-------+
    | Field | Type | Null | Key | Default | Extra |
    +----------+-------------+------+-----+---------+-------+
    | EMPNO | int(4) | NO | PRI | NULL | |
    | ENAME | varchar(10) | YES | | NULL | |
    | JOB | varchar(9) | YES | | NULL | |
    | MGR | int(4) | YES | | NULL | |
    | HIREDATE | date | YES | | NULL | |
    | SAL | double(7,2) | YES | | NULL | |
    | COMM | double(7,2) | YES | | NULL | |
    | DEPTNO | int(2) | YES | | NULL ||

  3. 查看表中的数据。

select * from emp;
select * from salgrade;                     ##标准sql语句出现了

+-------+--------+-----------+------+------------+---------+---------+--------+
| EMPNO | ENAME | JOB | MGR | HIREDATE | SAL | COMM | DEPTNO |
+-------+--------+-----------+------+------------+---------+---------+--------+
| 7369 | SMITH | CLERK | 7902 | 1980-12-17 | 800.00 | NULL | 20 |
| 7499 | ALLEN | SALESMAN | 7698 | 1981-02-20 | 1600.00 | 300.00 | 30 |
| 7521 | WARD | SALESMAN | 7698 | 1981-02-22 | 1250.00 | 500.00 | 30 |
| 7566 | JONES | MANAGER | 7839 | 1981-04-02 | 2975.00 | NULL | 20 |
| 7654 | MARTIN | SALESMAN | 7698 | 1981-09-28 | 1250.00 | 1400.00 | 30 |
| 7698 | BLAKE | MANAGER | 7839 | 1981-05-01 | 2850.00 | NULL | 30 |
| 7782 | CLARK | MANAGER | 7839 | 1981-06-09 | 2450.00 | NULL | 10 |
| 7788 | SCOTT | ANALYST | 7566 | 1987-04-19 | 3000.00 | NULL | 20 |
| 7839 | KING | PRESIDENT | NULL | 1981-11-17 | 5000.00 | NULL | 10 |
| 7844 | TURNER | SALESMAN | 7698 | 1981-09-08 | 1500.00 | 0.00 | 30 |
| 7876 | ADAMS | CLERK | 7788 | 1987-05-23 | 1100.00 | NULL | 20 |
| 7900 | JAMES | CLERK | 7698 | 1981-12-03 | 950.00 | NULL | 30 |
| 7902 | FORD | ANALYST | 7566 | 1981-12-03 | 3000.00 | NULL | 20 |
| 7934 | MILLER | CLERK | 7782 | 1982-01-23 | 1300.00 | NULL | 10 |
+-------+--------+-----------+------+------------+---------+---------+--------+

  1. Mysql常用其他命令行
select database();    查看当前使用数据库
select version();		查看Mysql版本号

结束一条语句:\c

exit 退出Mysql

查看其他数据库中的表

show tables from mysql;				//			show tables;Mysql语句默认查看当前数据库中的表

而上面的这个语句可以在当前数据库下查询其他数据库中的表,当前在liufeng_info数据库中,可以查看mysql数据库中的表

  1. 查看创建表的建表语句

    show create table db;(db表在mysql数据库中)
    
  2. 使用SQL语句对表中的字段下的数据进行查询

    select 字段名1,字段名2,字段名3...... from 表名; //查询字段的时候,可以使用",",将不同字段名分隔开,糅合在一起查询,查询结果也成对显示
    

    注意这种查询方式需要知道准确的字段名,要是实在想不起来字段名叫什么名字,可以使用Mysql命令查询

    desc 表名;  ## 使用这个语句是为了配合select等SQL语句,查到表结构,让我们更清楚的认识
    

    注意:SQL语句不区分大小写,可以大写,也可以小写,还可以大小写混合

    select EMPNO,empno,EmpNo from emp;
    
posted @ 2021-03-10 22:56  _Sandman  阅读(232)  评论(0编辑  收藏  举报