导语:
一、数据库基本概念
1.什么是数据库
2.关于MySql数据库
二、MySQL的安装与卸载
安装步骤:
卸载步骤:
三、MySQL服务操作
1.服务启动和关闭:
2.登录和退出MySQL:
3.服务自启动:
4.命令行登录:
5.服务状态查询:
6.配置文件修改:
7.服务日志文件:
四、SQL语言基础
1.SQL语言特点:
2.数据类型:
3.函数:
4.子查询:
5.事务处理:
6.索引:
7.存储过程和触发器:
8.视图:
五、DDL操作数据库
1.创建数据库:
2.查询数据库:
3.修改数据库:
4.删除数据库:
5.使用数据库:
六、DDL操作表
1.添加字段:
2.修改字段:
3.重命名字段:
4.删除字段:
5.设置字段默认值:
6.字段约束:
7.外键约束:
8.修改表字符集:
9.添加注释:
10.查看表结构:
七、DML操作数据
1.插入单条数据:
2.插入多条数据:
3.删除满足条件的数据:
4.删除所有数据:
5.更新满足条件的数据:
6.更新所有数据:
7.使用子查询进行更新:
8.使用LIMIT限制更新数据量:
9.数据插入时的注意事项:
10.数据删除时的注意事项:
八、DQL查询数据
1.查询所有字段:
2.查询指定字段:
3.条件查询:
4.模糊查询:
5.排序查询:
6.分组查询:
7.连接查询:
8.子查询:
9.聚合函数:
10.数据去重:
11.字段别名:
结语:
导语:
数据库技术是现代信息系统的核心组成部分,它为我们的日常工作和生活提供了极大的便利。在众多数据库软件中,MySQL因其开源、易用、稳定的特点而广受欢迎。今天,我们将以通俗易懂的方式为您科普MySQL数据库的相关知识,带您轻松掌握其安装、配置、以及基本操作。
一、数据库基本概念
数据库的定义和作用:数据库是一种用于存储和管理数据的仓库,它能够组织、存储和管理各种类型的数据,为用户提供高效的数据检索和更新服务。
数据库技术在各类信息系统中发挥着至关重要的作用,是进行科学研究和决策管理的重要技术手段。
1.什么是数据库
(1)存储数据的仓库
(2)本质上是一个文件系统,还是以文件的方式存在服务器的电脑上的。
(3)所有的关系型数据库都可以使用通用的 SQL 语句进行管理 DBMS DataBase Management System
2.关于MySql数据库
(1)MySQL是一种开源的关系型数据库管理系统,由瑞典MySQL AB公司开发,现已被Oracle公司收购。
(2)MySQL支持多线程、多用户,能够跨平台运行,广泛应用于Web应用中,具有体积小、速度快、成本低、开放源代码等优点。
(3)MySQL支持标准SQL语言,拥有良好的扩展性和可移植性,广泛应用于各种Web应用中,包括京东、淘宝等知名网站都采用了MySQL数据库。
(4)MySQL数据库拥有多种存储引擎,如InnoDB、MyISAM等,可以满足不同应用场景的需求。
(5)MySQL数据库支持主从复制、读写分离等特性,能够实现高可用和负载均衡,具有出色的可扩展性和可靠性。
(6)MySQL社区活跃,文档资料丰富,是学习数据库管理系统的首选之一。
二、MySQL的安装与卸载
安装步骤:
下载MySQL安装包,启动安装向导,选择安装类型,配置MySQL服务,设置root用户密码,安装MySQL客户端工具,选择字符集和校对规则,确定安装目录,开始安装。
卸载步骤:
停止MySQL服务,打开控制面板,选择程序和功能,找到MySQL并选择卸载,删除MySQL安装目录,删除ProgramData目录下的MySQL文件夹。
(具体操作步骤篇幅过长,有需要的读者们可以私信我领取安装包以及安装步骤)
或者可以等一等,有空发出来。
三、MySQL服务操作
MySQL服务操作包括以下关键点:
1.服务启动和关闭:
(1)通过MySQL安装目录下的bin目录启动服务,或使用命令行输入net start mysql启动服务。
(2)关闭服务可通过命令行输入net stop mysql实现。
2.登录和退出MySQL:
(1)在cmd窗口中,使用命令mysql -uroot -p并输入root用户密码进行登录。
(2)退出MySQL时,在MySQL命令行窗口输入exit或quit命令。
3.服务自启动:
可以将MySQL服务设置为开机自启动,通过服务管理器(services.msc)找到MySQL服务,右键选择属性,在启动类型中选择自动。
4.命令行登录:
可以通过命令行参数连接远程MySQL服务器,例如:mysql -h ip -P port -u user -p。
5.服务状态查询:
使用命令mysqladmin ping可以检查MySQL服务是否正在运行。
6.配置文件修改:
可以通过修改MySQL的配置文件my.ini来配置服务参数,例如端口号、字符集等。
7.服务日志文件:
MySQL的错误日志文件通常位于MySQL的data目录下,可以通过查看错误日志来诊断服务问题。
四、SQL语言基础
SQL语言的分类:
包括DDL(数据定义语言)、DML(数据操作语言)、DQL(数据查询语言)和DCL(数据控制语言)。
SQL语句的通用语法:
语句可以单行或多行书写,以分号结束,支持使用空格和缩进来增强可读性。MySQL的SQL语句不区分大小写,但建议使用大写关键字。支持使用–或#注释单行,以及/* */注释多行。
具体可以体现为:
1.SQL语言特点:
SQL是一种声明式语言,用户只需要指定需要做什么,而不需要指定如何做。这种设计使SQL具有易学易用、灵活高效的特点。
2.数据类型:
SQL支持多种数据类型,包括数值型(int, float等)、字符型(char, varchar等)、日期时间型(date, time, datetime等)以及二进制类型(blob等)。在创建表时应根据实际需要选择合适的数据类型。
3.函数:
SQL提供了丰富的内置函数,包括数学函数(如abs, sqrt)、字符串函数(如concat, substring)、日期时间函数(如curdate, datediff)、转换函数(如cast, convert)等。熟练使用这些函数可以大大简化查询操作。
4.子查询:
子查询允许将一个查询的结果作为另一个查询的条件或数据源,极大地增强了SQL的查询能力。例如,可以在WHERE子句中使用子查询来过滤结果集。
5.事务处理:
SQL支持事务处理,即可以保证一系列操作要么全部成功,要么全部失败,从而保证数据库的完整性和一致性。事务处理的关键语句包括BEGIN TRANSACTION、COMMIT和ROLLBACK。
6.索引:
索引可以大大提高查询效率,因为其可以减少查询需要扫描的数据量。常用的索引包括主键索引、唯一索引、普通索引等。创建表时应根据查询需求设计合理的索引。
7.存储过程和触发器:
存储过程是一组为了完成特定功能的SQL语句集合,可以提高代码复用性。触发器可以监控表的插入、删除和修改操作,并触发特定的SQL操作。它们都可以提高数据库应用的开发效率。
8.视图:
视图是基于一个或多个表的查询结果集,可以简化复杂的查询操作,提高查询效率。同时,视图也可以用于提供数据的抽象层,隐藏底层数据库的结构。
五、DDL操作数据库
1.创建数据库:
(1)创建数据库
CREATE DATABASE 数据库名称;
(2)判断数据库是否已经存在,不存在则创建数据库
CREATE DATABASE IF NOT EXISTS 数据库名;
(3)创建数据库并指定字符集
CREATE DATABASE 数据库名 CHARACTER SET 字符集;
2.查询数据库:
SHOW DATABASES;查看所有的数据库
show create database db1; 查看某个数据库的定义信息
3.修改数据库:
ALTER DATABASE 数据库名称 CHARACTER SET 字符集名称;
4.删除数据库:
DROP DATABASE 数据库名称;
5.使用数据库:
(1)查看正在使用的数据库
SELECT DATABASE(); 使用的一个 mysql 中的全局函数
(2)使用/切换数据库
USE 数据库名称;
六、DDL操作表
1.添加字段:
可以使用ALTER TABLE 表名 ADD 字段名 数据类型 来为表添加新的字段,如 :
ALTER TABLE students ADD gender char(1);
2.修改字段:
可以使用ALTER TABLE 表名 MODIFY 字段名 新数据类型 来修改字段的数据类型,如 :
ALTER TABLE students MODIFY gender varchar(10);
3.重命名字段:
可以使用ALTER TABLE 表名 CHANGE 旧字段名 新字段名 新数据类型 来重命名字段,如:
ALTER TABLE students CHANGE gender sex varchar(10);
4.删除字段:
可以使用ALTER TABLE 表名 DROP 字段名 来删除字段,如:
ALTER TABLE students DROP sex;
5.设置字段默认值:
在创建表时,可以为字段设置默认值,如:
CREATE TABLE students(id int, name varchar(20), age int default 18);
6.字段约束:
可以为字段设置非空、唯一、主键等约束,以增强数据的完整性,如:
CREATE TABLE students(id int primary key, name varchar(20) not null, age int default 18);
7.外键约束:
可以在创建表时通过FOREIGN KEY约束来实现表与表之间的关联,如:
CREATE TABLE orders(order_id int, product_id int, FOREIGN KEY(product_id) REFERENCES products(product_id));
8.修改表字符集:
可以使用ALTER TABLE 表名 DEFAULT CHARACTER SET 字符集 来修改表的默认字符集,如:
ALTER TABLE students DEFAULT CHARACTER SET utf8;
9.添加注释:
可以为表和字段添加注释,以提高可读性,如:
ALTER TABLE students COMMENT ‘学生表’;
10.查看表结构:
可以使用DESCRIBE或DESC 表名 来查看表的结构,如:
DESCRIBE students;
七、DML操作数据
1.插入单条数据:
使用INSERT INTO 表名(列名1, 列名2, …) VALUES(值1, 值2, …) 语句插入单条数据,如
INSERT INTO students(name, age) VALUES(‘张三’, 20);
2.插入多条数据:
可以在一条INSERT语句中插入多条数据,使用VALUES(),(),()语法,如
INSERT INTO students(name, age) VALUES(‘张三’, 20),(‘李四’, 22),(‘王五’, 21);
3.删除满足条件的数据:
使用DELETE FROM 表名 WHERE 条件 语句删除满足条件的数据,如
DELETE FROM students WHERE age < 18;
4.删除所有数据:
可以使用DELETE FROM 表名;语句删除表中所有数据,也可以使用TRUNCATE TABLE 表名;语句,后者效率更高;
5.更新满足条件的数据:
使用UPDATE 表名 SET 列名1 = 值1, 列名2 = 值2, … WHERE 条件 语句更新满足条件的数据,如
UPDATE students SET age = 21 WHERE name = ‘张三’;
6.更新所有数据:
可以在没有WHERE条件的情况下更新表中所有数据,如
UPDATE students SET age = 20;
7.使用子查询进行更新:
可以在UPDATE语句中使用子查询作为条件,如
UPDATE students SET age = 21 WHERE name IN (SELECT name FROM students WHERE age < 20);
8.使用LIMIT限制更新数据量:
可以在UPDATE语句中添加LIMIT限制条件,如
UPDATE students SET age = 20 WHERE age < 18 LIMIT 10;
9.数据插入时的注意事项:
插入数据时要注意字段的类型、长度等约束条件,以避免插入错误的数据;
10.数据删除时的注意事项:
删除数据时要注意WHERE条件,避免误删数据。
八、DQL查询数据
1.查询所有字段:
可以使用SELECT * FROM 表名;语句查询表中的所有字段数据,如
SELECT * FROM students;
2.查询指定字段:
可以使用SELECT 字段1, 字段2, … FROM 表名;语句查询表中的指定字段数据,如
SELECT name, age FROM students;
3.条件查询:
可以在SELECT语句中使用WHERE子句添加条件,以查询符合条件的数据,如
SELECT * FROM students WHERE age > 18;
4.模糊查询:
可以在SELECT语句中使用LIKE关键字进行模糊查询,如
SELECT * FROM students WHERE name LIKE ‘%李%’;
5.排序查询:
可以在SELECT语句中使用ORDER BY子句对结果进行排序,如
SELECT * FROM students ORDER BY age DESC;
6.分组查询:
可以在SELECT语句中使用GROUP BY子句进行分组查询,如
SELECT name, COUNT(*) FROM students GROUP BY name;
7.连接查询:
可以使用JOIN关键字进行多表连接查询,如
SELECT students.name, classes.name FROM students JOIN classes ON students.class_id = classes.id;
8.子查询:
可以在SELECT语句中使用子查询,如
SELECT * FROM students WHERE age > (SELECT AVG(age) FROM students);
9.聚合函数:
可以使用COUNT(), SUM(), AVG(), MAX(), MIN()等聚合函数进行数据统计,如
SELECT COUNT(*) FROM students;
10.数据去重:
可以使用DISTINCT关键字去除查询结果中的重复数据,如
SELECT DISTINCT name FROM students;
11.字段别名:
可以使用AS关键字为查询结果的字段指定别名,如
SELECT name AS 姓名, age AS 年龄 FROM students;
结语:
通过以上内容,相信您已经对MySQL数据库有了基本的了解,包括其安装、配置以及基本操作。数据库技术在我们的工作和生活中发挥着重要作用,掌握这些知识将使您在处理数据和信息系统时更加得心应手。希望本文对您有所帮助,祝您学习愉快!