跟着这个学的:MySQL_尚硅谷_bilibili


概论

为什么要使用数据库

为什么要用数据库来存取数据呢?数组、集合、文件不也能存取数据吗,功能不够用嘛?
数组、集合,最后是把数据存在了内存中,而内存最大的缺点就是易失性,主机重启数据就没了,数据无法长时间存放。
文件的数据存在外存,能实现长时间存放,但是不适合查询。
所以就需要专门开发出一套数据库系统,实现数据持久存放,统一管理。

数据库相关概念

DB:DataBase,数据库,存储数据的仓库,保存一系列有组织的数据。

DBMS:DataBase Management System,数据库管理系统,也可以理解为数据库软件。常见的数据库管理系统有MySQL、Oracle、DB2、SqlServer等。

SQL:Structured Query Language,结构化查询语言,专门用来与数据库通信的语言。SQL的优点:

  1. 不是某个特定数据库供应商专有的语言,几乎所有的DBMS都支持SQL。当然各种DBMS可能有自己的“方言”。
  2. 简单却强大灵活。

数据库的特点

  1. 将数据放到表中,再把表放到库中。
  2. 一个数据库中可以有多张表,每张表都有一个唯一的名字用来标识自己。
  3. 表具有一些特性,这些特性定义了数据在表中如何存储,类似java中“类”的设计。
  4. 表由列组成,我们也称为字段,每一列(字段)类似java中的“属性”。
  5. 表中的数据是按行存储的,每一行类似java中的“对象”。

MySQL软件基本使用

DBMS分为两类:

  1. 基于共享文件系统的DBMS,如Access。
  2. 基于客户机-服务器的DBMS,如MySQL、Oracle、SqlServe。

对于第二类数据库软件,我们说安装它,一般是指安装服务器端的软件。

MySQL服务的启动和停止

方式一:图形化接口
右击开始菜单 → 计算机管理 → 服务和应用程序 → 服务 → 找到MySQL,手动启动停止

方式二:命令行接口
注意应以管理员身份运行命令提示符。
停止MySQL:net stop mysql
启动MySQL:net start mysql
(这里我没改服务名称,如果更改了服务名称需要net stop 服务名称net start 服务名称

MySQL服务器端的登录和退出

在进行MySQL服务器端的登录和退出之前,要保证你的MySQL服务是启动的。
有两种方式控制MySQL服务器端,一是MySQL安装后自带的控制程序,二是Windows的命令提示符,如图:

前者只能用于root用户的登录使用,所以推荐使用后者。
登录命令:mysql -h localhost -P 3306 -u root -p
-h表示要连的主机,localhost即表示本机,它们之间的空格可以省略;
-P表示端口号,注意这个P是大写的,它后面的空格也可以省略;
-u表示用户,root即根用户;
-p表示密码,这个p是小写的。
但是如localhost-P之间的空格不能省略,因为它们是两个命令。
登录命令可以简写为mysql -u root -p

退出:exitquit或者按下Ctrl+c都可以退出。

MySQL的常见命令概览

先大致浏览一下,以后会详细深入介绍。

显示当前的数据库列表:show databases;
注意结尾加个分号。

打开指定的数据库:use 数据库名称;
显示数据库中的列表:show tables;

显示特定数据库列表:show tables from 数据库名称;

查询当前所使用的数据库:select database();
这里的database()相当于一个函数。

创建表:create table stuinfo(id int, name varchar(20));

查看表结构:desc 表名称

在表中插入数据:insert into stuinfo (id,name) values(1,'John');
显示表中的数据:select * from stuinfo;
更新表中的数据:update stuinfo set name='Mary' where id=1;
删除表中的数据:delete from stuinfo where id=1;

查看当前MySQL服务器端版本:
法一,MySQL命令:mysql> select version();
法二,DOS命令:C:\Windows\system32>mysql --version(或mysql --V

常见命令总结

  1. 查看当前所有的数据库
    show databases
  2. 打开指定的库
    use 库名称;
  3. 查看当前库的所有表
    show tables;
  4. 查看其他库的所有表
    show tables from 库名称;
  5. 创建表
    create table 表名(
      列名 列类型;
      列名 列类型;
      ...
    )
  6. 查看表结构
    desc 表名称
  7. 查看当前版本
    mysql> select version();
    C:\Windows\system32> mysql --version
    C:\Windows\system32> mysql -V