一、任务详情
自学教材第14章,提交学习笔记(10分),评分标准如下
- 知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图,提示过程参考下面内容 (4分)
- 问题与解决思路,遇到问题最先使用chatgpt等AI工具解决,并提供过程截图(3分)
- 实践过程截图,代码链接(2分)
- 其他(知识的结构化,知识的完整性等,提交markdown文档,使用openeuler系统等)(1分)
二、笔记内容
第十四章 MySQL数据库系统
MySQL简介
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。
MySQL是将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。由于其社区版的性能卓越,搭配 PHP 和 Apache可组成良好的开发环境。
安装MySQL
在Ubuntu里输入sudo apt-get install mysql-server
mysql-server包包括一个MySQL服务器和一个客户机,它会询问根用户密码。可通过运行脚本对其进行配置获得更好的安全性:
mysql_secure_intsallation
使用MySQL
14.3.1 MySQL的使用
连接到 MySQL 服务器
mysql -u root -p # specify the root user with password
Enter password: # enter the MySQL root user password
mysql > # mysql prompt
使用以上命令连接。
14.3.2 显示数据库
SHOW DATABASES; 用于显示数据库。
14.3.3 创建数据库
CREATE DATABASE test; 用于创建新的数据库。
14.3.4 删除数据库
DROP DATABASE dbname; 用于删除已存在的命名数据库
14.3.5 选择数据库
USE dbname;
14.3.6 创建表
CREATE TABLE students(student_id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,name CHAR(20),score INT);
SHOW TABLES;
DESCRIBE students;
14.3.7 表内添加元素
insert into students values(2021,‘zjy’,‘1402’)
可以添加脚本来实现便捷输入
14.3.8 删除行元素
delete from students where name = ‘www’;
14.3.9 更新表
update students set score = 92 where name = ‘zjy’;
14.3.10 修改表
-
修改表名
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;
14.3.11 关联表
一个真正的数据库可以能包含多个相互关联的表,使用主键-外键约束条件来定义表关系。在两个表之间创建链接,其中一个表的主键与另一个表的外键相关联
- 一对一关系
- 一对多关系
- 多对多关系
- 自引用关系
14.3.12 MySQL数据库关系图
用数据库关系图来描述表之间的关系非常有用,这类关系图通常称为ERD(实体关系图)或EERD(增强/扩展ERD)
14.3.13 MySQL脚本
与普通unix/Linux sh一样,MySQL shell也可以接受和执行脚本文件。MySQL脚本文件的后缀是.sql
2.苏格拉底挑战
三、问题与解决思路
问题
(1)mysql中怎么进行查找?
解决思路
四、实践过程截图