首页 > 技术文章 > 第14章学习笔记(20191213兰毅达)

1301cn 2021-12-06 12:19 原文

第14章学习笔记

1.1摘要

本章讨论了MySQL关系数据库系统;介绍了MySQL并指出了它的重要性;展示了如何在Linux机器上安装和运行MySQL;演示了如何使用MySQL在命令模式和批处理模式下使用SQL脚本创建和管理数据库;说明了如何将MySQL与C编程相结合;演示了如何将MySQL与PHP集成,通过动态Web页面创建和管理数据库。

2.1MySQL

  MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。
  MySQL是将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
  MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。
由于其社区版的性能卓越,搭配 PHP 和 Apache可组成良好的开发环境

3.1MySQL与其他的大型数据库比较

  例如Oracle 、DB2、SQL Server等相比,MySQL 自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于 MySQL是开放源码软件,因此可以大大降低总体拥有成本。
  Linux作为操作系统,Apache 或Nginx作为 Web 服务器,MySQL 作为数据库,PHP/Perl/Python作为服务器端脚本解释器。由于这四个软件都是免费或开源软件软件(FLOSS:Free/Libre and Open Source Software),因此使用这种方式除开人工成本就可以建立起一个稳定、免费的网站系统,也被称为“LAMP“或“LNMP”组合。

4.1数据库类型

  1.关系型数据库

  2.非关系型数据库

5.1SQL结构化查询语言

  必须是通过服务器,连接我们的数据库,才能进行操作

  使用各种SQL语句、增、删、改、查

5.1.1数据定义语言(DDL):

  用于定义和管理数据对象,包括数据库,数据表等。例如:CREATE,DROP,ALTER等。

  数据库 -> 数据表:对数据库或数据表的创建、删除、修改等操作

5.1.2数据操作语言(DML):

  用于操作数据库对象中所包含的数据。例如:INSERT,UPDATE,DELETE语句。

  对数据的 增、删、改 这些操作,就是数据操作语言

5.1.3数据查询语言(DQL):

  用于查询数据库对象中所包含的数据,能够进行单表查询,

  连接查询,嵌套查询,以及集合查询等各种复杂程度不同的数据库查询,并将数据

  返回客户机中显示。SELECT

5.1.4数据控制语言(DCL):

  是用来管理数据库的语言,包括管理权限及数据更改。

6.1使用MySQL

6.1.1> 环境变量

    我的电脑 -> 右击属性 -> 高级系统设置 -> 环境变量 ->系统变量 ->path

    在path变量后加上;变量值

    变量值就是MySQL下的bin目录路径

    注意:必须开启wamp服务器才可以进去

6.1.2>进入MySQL数据库

    DOS系统下清屏的命令:cls

    mysql -h localhost -u root -p -b

      -h 服务器(本地、指定服务器IP的)[本地localhost可以省略]
      -u 用户名(我们用的是root用户:超级管理员)
      -p 用户密码(不需要再它后面写密码,密码是回车之后写的)
      -b 蜂鸣器(当命令敲错了,报错时提示的声音)

6.1.3>进入MySQL数据库以后的命令

    注意:
    1> 每一行命令结束了以后,请使用 ; 或 \g 来结束,否则命令可以一直写下去
    2> 在MySQL的命令中,如果一行命令没有敲完,就回车了,它会继续执行下去,前提是必须是一条完整的命令
    3> 退出敲错的命令、或不想继续执行下去的命令时,用\c 或者 Ctrl+c
    4> 要想让数据竖起来显示,在命令后用\G
    5> \s 可以显示当前服务器的配置
    6> help 查看所有可以使用的快捷命令
    7> 如果在命令行中遇到了单引号,则MySQL认为你要输入一段字符串,所以,它是必须使用结束的单引号,可以跳出字符串输入状态;

6.1.4> 退出数据库服务器

    \q 、 exit、 quit  三者皆可

7.1操作数据库的一些命令

7.1.1创建数据库

      create database 数据库名;

    注意:
      1.如果数据库已存在,不能创建同名的数据库
      2.创建命令和数据库名都不区分大小写

      if not exists 如果数据库已存在,加上前面的关键字可以避免报错

7.1.2删除数据库

      drop database 数据库名;

7.1.3查看已创建的数据库

      show databases;

7.1.4使用一个数据库

      use 数据库名;

7.1.5查看当前我们所使用的数据库

      select database();

7.1.6查看建库语句

      show create database 数据库名;

      说明:通过该命令,我们可以看到所建数据库的建库语句、编码类型;

      注意:
          1.MySQL数据库中命令不区分大小写。

          2.每创建一个数据库,就会在data目录下创建一个以此数据库名称命名的文件夹。

          3.在Windows下,数据库名称也是不区分大小写的,但在Linux下,数据库名称严格区分大小写。

7.1.7对数据表的操作

      表中的字段,其实可以理解为table表格中的表头

          1>创建数据表(不加任何主键信息,自增,数据限制条件的简易数据表创建)>最初练习可用
            create table 表名(
            字段名1 字段类型,
            字段名2 字段类型,
            字段名3 字段类型
            );

            注意:
            1.创建一个数据表时,它的每个字段之间用逗号","隔开;
            2.最后一个字段不用逗号",";
            3.创建完表以后,最后的括号后面使用分号结束
            4.建表时,表名后面的括号中写表的字段名(字段类型)

          2> 查看表结构

            desc 表名;

          3> 查看建表语句

            show create table 表名;

          4> 查看当前数据库存在的数据表

            show tables;

          5> 删除数据表

            drop table 表名

7.1.8对数据的操作

          1> 添加数据
            ① insert into 表名 (字段1,字段2……) values (值1,值2……);

            ② insert into 表名 values (值1,值2……),(值1,值2……);

            ③ insert into 表名 (字段1,字段2……) values (值1,值2……),(值1,值2……);

            ④ insert into 表名 values (值1,值2...);

            ⑤ insert into 表名 set 字段1=值1,字段2=值2...;

              注意:
                1.值和字段名要一一对应,否则会报错
                2.你写入的值一定要和数据类型相匹配

          2> 删除数据

             delete from 表名 where 条件;

              注意:删除数据的时候,一定要加上where条件,否则会删除所有的数据

          3> 修改数据

             update 表名 set 要修改的字段=修改后的值 where 条件

              注意:修改数据的时候,一定要加上where条件,否则会修改所有的数据

          4> 查找数据

             select *(所有字段) from 表;

             select 字段1,字段2.. from 表;

8.1实践内容与截图

Windows系统下:

Linux:
命令如下
[root@host]# mysql
以上命令执行后会输出 mysql>提示符,这说明已经成功连接到Mysql服务器上,可以在 mysql> 提示符执行SQL命令:

mysql> SHOW DATABASES;
+----------+
| Database |
+----------+
| mysql |
| test |
+----------+
2 rows in set (0.13 sec)
Mysql安装后需要做的
Mysql安装成功后,默认的root用户密码为空,你可以使用以下命令来创建root用户的密码:

[root@host]# mysqladmin -u root password "new_password";
现在可以通过以下命令来连接到Mysql服务器:

[root@host]# mysql -u root -p
Enter password:********

9.1问题与解决

问题:Navicat如何连接mysql数据库?
解决:用Navicat自带的SSH进行连接
1.首先在Navicat中新建连接
2.在用户名中填写远程数据库的登录用户名,密码框中填写MySQL登录密码
3.测试连接

推荐阅读