《Unix/Linux系统编程》第十四章学习笔记

《Unix/Linux系统编程》第十四章学习笔记


作者:20191322吴泳淋

知识点总结

MySQL简介

  • MySQL是一个关系数据库系统在关系数据库中,数据存储在表中。每个表由多个行和列组成。表中的数据相互关联。表也可能与其他表有关联。关系结构使得可在表上运行查询来检索信息并修改数据库中的数据。
  • MySQL是一个开源数据库管理系统,由服务器和客户机组成。在将客户机连接到服务器后,用户可向服务器输入SQL命令,以便创建数据库,删除数据库,存储、组织和检索数据库中的数据。- -- MySQL有广泛的应用。除了提供标准的数据库系统服务外,MySQL 和PHP已成为大多数数据管理和在线商务网站的主干网。

安装MySQL

在Ubuntu中,使用命令sudo apt install mysql-server
可通过运行脚本对其进行配置以获得更好的安全性mysql_secure_installation

Mysql操作

  1. 连接到MySQL服务器

    mysql -u root -p
    Enter password: 
    mysql>
    
  2. 显示数据库

    SHOW DATABASES//命令可显示MySQL中的当前数据库

  3. 新建数据库

    CREATE DATABASE dbname //创建一个名为dbname的数据库,如果数据库已经存在,则可以使用IF NOT EXISTS子句对命令限定。

  4. 删除数据库

    DROP DATABASE dbname //删除已存在的命名数据库,该命令可以用一个可选的IF EXISTS 子句限定。

  5. 选择数据库

    USE dbname//命令选择一个数据库

  6. 创建表

    CREATE TABLE table_name //命令会在当前数据库中创建一个表;DESCRIBE 命令显示表格式和列属性。

  7. 删除表

    DROP TABLE table_name //命令删除表

Mysql中的数据类型

数值类型
  • INT:整数(4字节),TINYINT:(1字节)S,MALLINT:(2字节)等。
  • FLOAT:浮动指针数。
字符串类型
  • CHAR(size):固定长度字符串,长度为1~255字符。

  • VARCHAR(size):可变长度字符串,但不能使用任何空格。

  • TEXT:可变长度的字符串。

  • TEXT:可变长度的字符串。

日期和时间类型
  • DATE:日期格式为YYYYMM-DD。
  • TIME:以HHMMSS格式保存时间。

Mysql中的数据操作

  • 插入行

    • 要在表中添加行,可使用INSERT命名,具有语法形式:
      INSERT INTO table_name VLAUES(columnValuel,columnValue2,....);
  • 删除行

    • 使用DELETE命令从表中删除行
    DELETE FROM table_name;
    DELETE FROM table_name WHERE condition;
    
  • 更新表

    • UPDATE命令用于修改表中的现有记录(列)
      UPDATE table_name SET coll = value1, col2 = value2,…… WHERE condition;
  • 修改表

    • ALTER TABLE命令用于添加、删除或修改当前表中的列。它还用于添加和删除当前表中的各种约束条件。

    • 修改表名

      • 如需修改表名,可使用以下命令:
        ALTER TABLE table name renAme To new_name;

      • 添加列 要在表中添加列,可使用以下命令:
        ALTER TABLE table name ADD column name datatype;

      • 删除行 可使用以下命令删除列:
        ALTER TABLE table name DROP column name datatype;

      • 更改/修改行 可使用以下命令修改表中某列的数据类型:
        ALTER TABLE table name ALTER COLUNN column_name datatype;

      • 关联表

        • 一个真正的数据库可以能包含多个相互关联的表,使用主键-外键约束条件来定义表关系。
          • 一对一
          • 一对多
          • 多对多
          • 自引用
      • 连接操作

        • 在MySQL中,可使用连接操作在多个表中检索数据。连接操作有4种不同的类型。
          • (INNER)JOIN tablel,table2:检索两个表中共有的项。
          • LEFT JOIN tablel,table2:检索表1中的项以及两个表中共有的项。
          • RIGHT JOIN tablel,table2:检索表2中的项以及两个表中共有的项。
          • OUTER JOIN tabell, table2:检索两个表中非共有以及没有用的项。
        • 对于正则集运算,MySQL中的连接操作可以解释如下。+表示两个集合的并集,^表示两个集合的交集。则有
          • (INNER) JOIN t1, t2 = t1 ^ t2
          • LEFT JOIN t1, t2 m t1 + (t1 ^ t2)
          • RIGHT JOIN t1, t2 = t2 +(t1 ^ t2)
          • OUTER JOIN t1, t2 = t1 + t2;
posted @ 2021-12-12 21:17  20191322  阅读(41)  评论(0编辑  收藏  举报