前言
数据库是计算机系统中用于存储、管理和检索数据的系统。它允许用户访问并管理数据,并具有可靠、可扩展和高效的特性。
文章目录
MySQL是一个开源的关系型数据库管理系统,在互联网领域被广泛使用,如今也成为各种行业使用的标准数据库之一。
在这部分学习过程中,主要以
MySQL数据库
为例,学习数据库的基础知识,SQL语句的使用,JDBC开发技术,MyBatis简化JDBC开发以及用于方便管理项目的Maven技术…
1. 数据库的相关概念
1.1 数据
数据
是指数据库中存储的基本对象,是描述事物的符号记录。
1.2 数据库
数据库
是指存放数据的仓库,长期存放在计算机内的有组织可共享的数据集合。
数据库技术解决了数据的持久化存储问题,同时利用数据库管理系统解决了对大量数据操作繁琐的问题。
1.3 数据库管理系统
数据库管理系统
是指位于用户和操作系统之间的一层数据管理软件,科学的组织和存储,高效的获取和维护。
我们所说的MySQL数据库就是指MySQL数据库管理系统,在大家日常的使用习惯中把他叫做MySQL数据库。在我们的电脑安装好数据库管理系统软件以后就来创建数据库管理数据,同时也可以对数据库中的数据进行增删改查的操作。
1.4 数据库系统
数据库,数据库管理系统,应用程序和数据库管理员共同组成了
数据库系统
。
1.5 SQL
SQL的英文是
Structured Query Language
,简称 SQL,是一种操作关系型数据库的结构化查询语言,我们在操作数据库时经常用到的操作就是查询操作。
SQL定义了操作所有关系型数据库的统一标准
,可以使用SQL操作所有的关系型数据库管理系统,在使用其他的数据库管理系统时,也同样可以使用SQL来操作。
2. MySQL数据库
2.1 MySQL安装
首先,我们需要从MySQL官网下载合适的版本,并进行安装。对于初学者,可以下载MySQL Community Server,这是一个免费且易于使用的版本,安装过程也比较简单。在安装过程中,需要设置密码,这是你访问MySQL的必要条件。
这里选择下载的产品版本是
5.7.24
,原因是各个库支持的最完善且相对于最新版本更加的稳定。
2.2 MySQL配置
2.2.1 添加环境变量
右键此电脑 / 属性 / 高级系统设置 / 环境变量 ,在系统变量中新建变量,命名为
MYSQL_HOME
,变量值为刚才MySQL的存放路径。
双击系统变量中的Path,值为
%MySQL_HOME%\bin
。添加环境变量的方式与配置Java环境变量大致相同。
注:此时必须以管理员身份运行命令提示符工具,否则会报错。
2.2.2 新建配置文件
在MySQl的根目录中创建一个配置文件
my.ini
,其内容为:
[mysql]
default-character-set=utf8
[mysqld]
character-set-server=utf8
default-storage-engine=INNODB
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
主要目的是配置数据库的默认编码集为
utf-8
和默认存储引擎为
INNODB
。
2.2.3 初始化MySQL
在命令提示符窗口中运行
mysqld --initialize-insecure
,如果没有出现报错,则证明data目录初始化成功。
mysqld --initialize-insecure
此时当我们再打开查看MySQL目录,已经有
data
目录生成。
2.2.4 注册MySQL服务
在命令提示符窗口中运行
mysqld -install
,此时你的电脑就成功注册了MySQL服务,此时你的电脑就可以称为MySQL服务器。
mysqld -install
2.2.5 启动MySQL服务
在命令提示符窗口中运行
net start mysql
,此时,我们已经成功启动MySQL服务。
net start mysql
运行
net stop mysql
即可停止MySQL服务。
net stop mysql
可以通过运行
mysqladmin -u root password 1234
修改默认账户密码,这里的
1234
指默认管理员(即root账户)的密码。
mysqladmin -u root password 1234
2.3 MySQL登录和退出
在命令行中运行
mysql -uroot -p
,按照提示输入密码 ,即登录成功。
mysql -uroot -p密码
登录命令中的参数:
mysql -u用户名 -p密码 -h要连接的mysql服务器的ip地址(默认127.0.0.1) -P端口号(默认3306)
退出MySQL时:
exit
quit
2.4 MySQL卸载
我们只需要简单的三步就可以完成MySQL的卸载:
第一步:运行
net stop mysql
net stop mysql
第二步:运行
mysqld -remove mysql
mysqld -remove mysql
第三步:删除MySQL目录及相关的环境变量。
3. SQL语句
3.1 SQL简介
SQL被称为结构化查询语言,可以用于对所有的关系型数据库进行操作,即我们可以通过SQL语句对数据库、表、数据进行增删改查操作。
SQL定义了操作关系型数据库的统一标准,但是,对于同一个需求,每一种数据库操作的方式可能会存在一些不一样的地方。
以下是常用的 SQL 语句的介绍:
- SELECT
SELECT 语句是 SQL 中最重要的语句之一。它允许您从数据库中检索数据。使用 SELECT 语句时,您需要指定要从哪个表中选择数据,并根据需要添加筛选条件和排序规则。例如:
SELECT * FROM customers;
上述代码将返回 customers 表中的所有行。
- WHERE
WHERE 子句用于限制 SELECT 语句的结果集。例如:
SELECT * FROM customers WHERE last_name = 'Smith';
这将返回所有姓为 Smith 的客户。
- ORDER BY
ORDER BY 子句用于对结果集进行排序。默认情况下,数据按升序排序。可以使用 ASC 关键字显式指定。您还可以使用 DESC,表示降序排列。例如:
SELECT * FROM customers ORDER BY last_name DESC;
此代码将按姓氏的降序排列返回所有客户。
- GROUP BY
GROUP BY 子句用于将结果集分组。使用 GROUP BY 子句时,您需要指定要分组的列。例如:
SELECT country, COUNT(*) as customer_count FROM customers GROUP BY country;
此代码将按国家分组,并计算每个国家的客户数量。
- JOIN
JOIN 语句用于在多个表之间创建关联。例如:
SELECT * FROM customers JOIN orders ON customers.customer_id = orders.customer_id;
此代码将返回包含客户和订单信息的行,这些信息是通过 customer_id 列在两个表之间进行关联的。
- INSERT INTO
INSERT INTO 语句用于向数据库中添加新行。例如:
此代码将向 customers 表添加一行,其中包含 John Doe 的姓名和电子邮件地址。
- UPDATE
UPDATE 语句用于更新现有行。例如:
UPDATE customers SET email = '[email protected]' WHERE customer_id = 1;
此代码将更新 ID 为 1 的客户的电子邮件地址。
- DELETE
DELETE 语句用于从数据库中删除行。例如:
DELETE FROM customers WHERE customer_id = 1;
此代码将删除 ID 为 1 的客户的所有信息。
这些 SQL 语句只是常用的语句之一。当您开始使用 SQL 时,您会发现还有更多的语句和功能可供使用。
3.3 SQL分类
DDL: 数据定义语言,用来定义数据库对象:数据库,表,列等
DML: 数据操作语言,用来对数据库中表的数据进行增删改
DQL:数据查询语言,用来查询数据库中表的记录(数据)
DCL:数据控制语言,用来定义数据库的访问权限和安全级别,及创建用户
数据是数据库中非常重要的部分,所以在日后的操作中我们最常进行的是对数据的一些操作,即对数据进行怎删改查,所以最常用操作的是
DML
和
DQL
。
总的来说DML用于对数据增删改,DQL用于对数据查询操作,DDL用于操作数据库,而DCL是用来控制权限。
4. 总结
MySQL是一个广泛使用的关系型数据库管理系统,在许多行业应用中都得到了广泛的运用。虽然在学习过程中可能会遇到一些挑战,但是充分掌握这些技能可以帮助我们更好地应对各种数据管理任务。
【好书推荐】
【内容简介↓】
本书是作者基于多年的教学与实践进行的总结,重点介绍了MySQL数据库的核心原理与体系架构,涉及开发、运维、管理与架构等知识.
全书共12章,包括MySQL数据库基础、详解 InnoDB存储引擎、MySQL用户管理与访问控制、管理MySQL的数据库对象、MySQL应用程序开发、MySQL的事务与锁、MySQL备份与恢复、MySQL的主从复制与主主复制、MySQL的高可用架构、MySQL性能优化与运维管理、MySQL数据库的监控和使用MySQL数据库的中间件。读者根据本书中的实战步骤进行操作,可以在实际项目的生产环境中快速应用并实施MySQL。
本书基于MySQL 8.0版本编写,为读者提供了完整的实例代码。本书适合对MySQL数据库技术感兴趣的平台架构师、运维管理人员和项目开发人员阅读。读者无论是否接触过数据库技术,只要具备基础的Linux和SQL知识,都能够通过本书快速掌握MySQL并提升实战经验。
京东自营购买链接:《MySQL数据库进阶实战 》
版权归原作者 陈橘又青 所有, 如有侵权,请联系我们删除。