ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Ch14学习笔记——MySQL数据库系统

2021-12-12 22:01:26  阅读:133  来源: 互联网

标签:关系 name Ch14 数据库 MySQL TABLE table 数据库系统


Ch14学习笔记——MySQL数据库系统

14.1 MySQL简介

MySQL (MySQL2018 )是一个关系数据库系统(Codd 1970 )。在关系数据库中,数据存储在表中。每个表由多个行和列组成。表中的数据相互关联。表也可能与其他表有关联。关系结构使得可在表上运行查询来检索信息并修改数据库中的数据。关系数据库系统的标准查询语言是SQL (结构化查询语言),包括MySQL

14.2 安装MySQL

Ubuntu20.04中使用sudo apt install mysql-server安装MySQL。

使用mysql_secure_installation命令进行安全配置

image

一路yes保持默认,设置密码

image

到此已完成MySQL数据库的安装和配置。

14.3 使用MySQL

使用命令sudo mysql -u root -p命令连接到数据库。
image

14.3.1 简单的命令

命令 作用
SHOW DATABASES; 显示数据库
CREATE DATABASE ; 创建数据库
DROP DATABASE ; 删除数据库
use ; 选择数据库

image

14.3.2 复杂一点点的命令

1. MySQL中的数据类型

  1. 数值类型
    • INT:整数4字节,TINYINT:1字节, SMALLINT:2字节
    • FLOAT:浮点数
  2. 字符串类型
    • CHAR(size):固定长度字符串,长度为1~255字节
    • VARCHAR(size):可变长字符串,但不能使用任何空格
    • TEXT:可变长度的字符串
  3. 日期和时间类型
    • DATE:日期格式为YYYY-MM-DD格式
    • TIME:以HH:MM:SS格式保存时间

2. 表操作

创建表和删除表

使用CREATE TABLE <TABLENAME>命令创建表,使用DROP TABLE <TABLENAME>删除表

  • 示例 创建一个带有如下数据结构的表

    struct students{
    int student_id; # an integer ID number must exist
    char name[20]; # name string of 20 chars
    int score; # an integer exam score, which may not exist
    }
    

    使用如下命令

    CREATE TABLE students (
        student_id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
        name CHAR(20),
        score INT );
    

修改表
  • 插入行

    INSERT INTO table_name VLAUES (columnValue1, columnValue2, ... .);
    
  • 删除行

    DELETE FROM table_name; # delete all rows of a table
    DELETE FROM table_name WHERE condition; # delete row by condition
    
  • 更新表

    UPDATE table_name SET col1 = value1, col2 = value2, ... WHERE condition;
    
  • 修改表

    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 COLUMN column_name datatype; # 修改行
    

14.3.13 关联表

1. 一对一关系

一对一(1-1 )关系是指两个表仅基于一个匹配行相互关联的关系。可以使用主键-外键约束条件创建这类关系。

2. 一对多关系

在数据块中,一对多或1-M关系比1-1关系更常见,也更有用。一对多关系是指一 个表中的一行在另一个表中有多个匹配行的关系。可以使用主键-外键关系来创建这种关系。

3. 多对多关系

如果一个表中的多条记录与另一个表中的多条记录相关,则两个表具有多对多(M-M) 关系。

4. 连接操作

MySQL中,可使用连接操作在多个表中检索数据。连接操作有4种不同的类型。

  • (INNER) JOIN table 1, table2:检索两个表中共有的项。

  • LEFT JOIN table 1, table2:检索表1中的项以及两个表中共有的项。

  • RIGHT JOIN tablel,table2:检索表2中的项以及两个表中共有的项。

  • OUTER JOIN tabell,table2:检索两个表中非共有以及没有用的项。

14.3.16 MySQL 脚本

与普通Unix/Linux sh 一样,MySQL shell也可以接受和执行脚本文件。MySQL脚本文 件的后缀是.sql。它们包含MySQL服务器要执行的MySQL命令。我们可以使用MySQL 脚本来创建数据库,在数据库中创建表,插入表条目和修改表内容,而不是手动输入命令行。

标签:关系,name,Ch14,数据库,MySQL,TABLE,table,数据库系统
来源: https://www.cnblogs.com/lxy2019/p/15680753.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有