net start mysql
关闭服务
net stop mysql
登陆
安装并打开 MySQL 服务之后,我们就可以连接数据库进行使用了。MySQL 安装时默认提供了一个 root
用户,使用安装时设置的密码即可登陆。
- mysql -u 用户名 -p
mysql -u root -p
- mysql -h ip地址 -u 用户名 -p
mysql -h localhost -u root -p
退出
exit;
quit;
什么是 SQL
Structured Query Language:结构化查询语言是一种特定目的编程语言,用于管理关系数据库管理系统(RDBMS),或在关系流数据管理系统(RDSMS)中进行流处理。
SQL 基于关系代数和元组关系演算,包括一个数据定义语言和数据操纵语言。SQL 的范围包括数据插入、查询、更新和删除,数据库模式创建和修改,以及数据访问控制。尽管 SQL 经常被描述为,而且很大程度上是一种声明式编程(4GL),但是其也含有过程式编程的元素。
SQL 通用语法
-
SQL 语句能以单行或多行书写,以分号
;
表示一条语句的结束; -
MySQL 中的 SQL 语句不区分大小写,但是为了将关键字和自定义变量分开,建议关键字使用大写;
-
MySQL 的 3 种注释方式;
- 单行注释
SQL语句 – 注释内容
SQL语句 # 注释内容
- 多行注释
SQL语句 /* 注释内容 */
常用 SQL 语句
对于 SQL 语句,我们可以分为如下几类:
-
DDL
-
DML
-
DQL
-
DCL
以下就分别来看看各类语句的具体相关信息。
DDL(Data Definition Language)
- 定义
用于 定义数据库对象:数据库、表、列等,相关关键字:CREATE
、DROP
、ALTER
……
- 数据库操作
-
创建
-
创建数据库
CREATE DATABASE 数据库名;
- 创建数据库前先判断是否存在,不存在再创建
CREATE DATABASE IF NOT EXISTS 数据库名;
- 创建数据库的同时指定字符集
CREATE DATABASE 数据库名 CHARACTER SET 字符集名;
-
查询
-
查询所有数据库名称;
SHOW DATABASES;
- 查询某一数据库的字符集和它的创建语句;
SHOW CREATE DATABASE 数据库名;
-
更新
-
修改表名
RENAME TABEL 表名 TO 新表名;
- 修改数据库字符集
ALTER DATABASE 数据库名 CHARACTER SET 字符集名;
-
删除
-
删除数据库
DROP DATABASE 数据库名;
- 判断数据库是否存在,存在再删除
DROP DATABASE IF EXISTS 数据库名;
-
使用
-
使用某一个数据库
USE 数据库名;
- 查询当前正在使用的数据库
SELECT DATABASE();
- 表操作
-
创建
-
语法
CREATE TABLE 表名(
列名1 数据类型,
列名2 数据类型,
……
列名n 数据类型
);
- 常用数据类型
| 类型 | 说明 |
| — | — |
| int
| 整数类型 |
| double
| 小数类型 |
| varchar
| 字符串 |
| date
| 日期,只含年月日 |
| datetime
| 日期,不仅包含年月日,还包括时分秒 |
| timestamp
| 时间戳,包含年月日时分秒 |
- 表复制
CREATE TABLE 新表名 LIKE 被复制的表名;
-
查询
-
查询某个数据库中所有的表
SHOW TABLES;
- 查询表结构
DESC 表名;
-
更新
-
修改表名
ALTER TABLE 旧表名 RENAME TO 新表名;
- 修改表的字符集
ALTER TABLE 表名 CHARACTER SET 字符集名;
- 在表中添加一列
ALTER TABLE 表名 ADD 列名 数据类型;
- 修改列名称以及对应的数据类型
ALTER TABLE 表名 MODIFY 列名 新数据类型;
ALTER TABLE 表名 CHANGE 列名 新列名 新数据类型;
- 删除列
ALTER TABLE 表名 DROP 列名;
-
删除
-
直接删除表
DROP TABLE 表名;
- 判断表是否存在,存在则删除
DROP TABLE IF EXISTS 表名;
DML(Data Manipulation Language)
- 定义
用于 对数据库中表的数据进行增删改,相关关键字:INSERT
、UPDATE
、DELETE
……
- 添加数据
INSERT INTO 表名(列名1, 列名2, ……, 列名n) VALUES (值1, 值2, ……, 值n);
- 删除数据
- 删除所有记录,有多少条记录就执行多少次删除操作
DELETE FROM 表名 [WHERE 条件];
- 删除所有数据,先删除表,然后创建一张结构一样的表,比
DELETE
效率更高
TRUNCATE TABLE 表名;
- 修改数据
UPDATE 表名 SET 列名1=值1, 类名2=值2, ……, 类名n=值n [WHERE 条件];
DQL(Data Query Language)
- 定义
用于 查询数据库中的数据,相关关键字:SELECT
、HAVING
、WHERE
……
- 语法
SELECT
字段列表
FROM
表名列表
WHERE
条件列表
GROUP BY
分组字段
HAVING
分组后的条件
ORDER BY
排序
LIMIT
分页限定
OFFSET
开始分页的起始位置
- 基础查询
- 多字段查询
SELECT 字段1,字段2,…… FROM 表名;
- 去重查询
SELECT DISTINCT 去重字段,字段1,字段2,…… FROM 表名;
- 起别名
两者其一
SELECT 字段名 AS 别名 FROM 表名;
SELECT 字段名 别名 FROM 表名;
- 条件查询
WHERE
后加条件
| 关键字 | 意思 | 例子 |
| — | — | — |
| >
、<
、>=
、<=
、=
、!=
| 大于、小于、不小于、不大于、等于、不等于 | col_name != 4
|
| BETWEEN…AND…
| 介于两数之间,包含左右边界 | col_name BETWEEN 10 AND 100
|
| NOT BETWEEN…AND…
| 不在两数之间 | col_name NOT BETWEEN 10 AND 100
|
| IN(…)
| 在一个列表中 | col_name IN (1, 4, 5)
|
| NOT IN(…)
| 不在一个列表 | col_name NOT IN (1, 4, 5)
|
| LIKE
| 模糊查询,_
表示单个的任意字符,%
表示多个字符串 | col_name like "ABC_"
|
| IS NULL
| 判断某一字段是否为 NULL
| col_name IS NULL
|
| AND
或 &&
| 表示并行关系 | col_name1 == 5 AND col_name2 == 10
|
| OR
或 ||
| 表示满足其中任一条件即可 | col_name1 == 5 OR col_name2 == 10
|
| NOT
或 !
| 表示否定 | col_name IS NOT NULL
|
DCL(Data Control Language)
- 定义
用于 定义数据库的访问权限和安全级别,以及用户创建,相关关键字:GRANT
、REVOKE
……
- 授权
GRANT 权限 ON 数据库名.表名 用户@‘主机IP’ IDENTIFIED BY 用户密码;
- 撤回授权权限
REVOKE 权限 数据库名.表名 ON FROM 用户名;
在本地安装好数据库之后,我们可以通过命令行来进行操作,但是为了更加直观的看到我们的数据库属性和数据,我们一般都会选择图形化的工具来辅助我们进行开发。而这里我们推荐 DBeaver(https://dbeaver.io)。
这是一款通用的免费跨平台数据库工具,供开发人员、数据库管理员、分析人员和所有需要使用数据库的人使用。而且支持当前所有流行的数据库:MySQL,、PostgreSQL,、SQLite,、Oracle,、DB2,、SQL Server,、Sybase,、MS Access,、Teradata,、Firebird,、Apache Hive,、Phoenix,、Presto 等。
安装过程
- 双击打开下载好的
.exe
安装包,然后选择语言;
- 进入安装程序,点击 下一步 继续;
最后的话
无论是哪家公司,都很重视Spring框架技术,重视基础,所以千万别小看任何知识。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。
同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,好了希望这篇文章对大家有帮助!
部分截图:
- 撤回授权权限
REVOKE 权限 数据库名.表名 ON FROM 用户名;
在本地安装好数据库之后,我们可以通过命令行来进行操作,但是为了更加直观的看到我们的数据库属性和数据,我们一般都会选择图形化的工具来辅助我们进行开发。而这里我们推荐 DBeaver(https://dbeaver.io)。
这是一款通用的免费跨平台数据库工具,供开发人员、数据库管理员、分析人员和所有需要使用数据库的人使用。而且支持当前所有流行的数据库:MySQL,、PostgreSQL,、SQLite,、Oracle,、DB2,、SQL Server,、Sybase,、MS Access,、Teradata,、Firebird,、Apache Hive,、Phoenix,、Presto 等。
安装过程
- 双击打开下载好的
.exe
安装包,然后选择语言;
- 进入安装程序,点击 下一步 继续;
最后的话
无论是哪家公司,都很重视Spring框架技术,重视基础,所以千万别小看任何知识。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。
同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,好了希望这篇文章对大家有帮助!
部分截图:
[外链图片转存中…(img-tteXzDEm-1718772822549)]