第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)关系
- 自引用
一、苏格拉底挑战及截图
二、问题与解决思路
三、实践过程截图
安装mysql
数据库使用
显示数据库
创建数据库
创建表