Unix/Linux系统编程学习笔记-12

学习笔记

第14章 MySQL数据库系统

MySQL(MySQL 2018)是一个关系数据库系统。在关系数据库中,数据存储在表中。每个表由多个行和列组成。表中的数据相互关联,表也可能与其他表有关联。
MySQL是一个开源数据库管理系统,由服务器和客户机组成。在将客户机连接到服务器后,用户可向服务器输入SQL命令,以便创建数据库,删除数据库,存储、组织和检索数据库中的数据。

1.安装MySQL

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

2.使用MySQL

连接到MySQL服务器

     mysql -u root -p	# specify the root user with password
     Enter password:	# enter the MySQL root user password
     mysql >	        # mysql prompt

连接到MySQL服务器后,即可访问MySQL shell。
注意:

  • 所有的MySQL命令行末尾必须是分号
  • MySQL命令行不区分大小写

显示数据库

  • 命令:SHOW DATABASES;

新建数据库

  • 命令:CREATE DATABASE test;

删除数据库

  • 命令:DROP DATABASES dbname;

注意:DROP操作不可逆,一旦数据库被删除,无法撤销或恢复。
选择数据库

  • 命令:USE dbname;

创建表

  • 命令:CREATE TABLE table_name;
  • DESCRIBE或DESC命令显示表格式和列属性。

删除表

  • 命令:DROP TABLE table_name;

MySQL中的数据类型

  • 数值类型:
  • INT:整数(4 字节),TINYINT: ( 1 字节),SMALLINT: ( 2 字节)等。
  • FLOAT:浮动指针数。

字符串类型:

  • CHAR(size):固定长度字符串,长度为1〜255字符。
  • VARCHAR(size):可变长度字符串,但不能使用任何空格。
  • TEXT:可变长度的字符串。

日期和时间类型:

  • DATE:日期格式为 YYYY-MM-DD。
  • TIME:以S格式保存时间。

插入行

  • 命令:INSERT INTO table_name VALUES(column Value1,column Value2,...);
  • 可以创建一个包含多个插入命令行的MySQL脚本文件,并将其用作MySQL的输入源文件,使用SOURCE命令。

删除行

  • 命令:DELETE FROM ...;

更新表

  • 命令:UPDATE table_name SET col1 = value2,...WHERE condition;

修改表

  • 命令:ALTER TABLE;,用于添加、删除或修改当前表中的列。

关联表

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

一对一(1-1)关系
一对多(1-M)关系
多对多(M-M)关系
自引用

实践截图

1.安装MySQL

安装失败,输入如图代码

重新安装一遍

2.连接到MySQL

3.使用cat命令查看默认密码sudo cat /etc/mysql/debian.cnf

4.使用默认密码登录

5.修改密码

6.显示数据库

7.新建数据库

8.创建表

9.查看表属性

posted @ 2022-11-19 12:56  20201224吴卓航  阅读(24)  评论(0)    收藏  举报