MySQL学习
MySQL
1 . MySQL的启动
MySQL数据库的登陆与退出
-
登陆MySQL:
sudo mysql -
退出MySQL:
quit
exit
2. MySQL相关知识
1. 相关知识
- SQL语句中的注释可以使用
--或# (MySQL专属)作为单行注释,也可以使用/**/作为多行注释 - SQL 中的指令可大写也可小写,但一般对关键字使用大写
- SQL中的数据库名称为了防止与关键字相同,可以用 `` 包裹起来
- SQL语句结尾要加
;号 - SQL的不等于号为
<>
2. 主要数据类型
INT -- 整数
DECIMAL(m,n) -- 有小数点的数,有m位数,小数点后占n位
VARCHAR(n) -- 子串,最多能存放n个字
BLOB -- (Binary Large Object) 存放二进制资料,如图片
DATE -- 'YYYY-MM-DD' 存放日期
TIMESTAMP -- 'YYYY-MM-DD HH:MM:SS' 记录时间
DATETIME -- 'YYYY-MM-DD HH:MM:SS' 记录时间
3. PRIMARY KEY(主键)
✅ 定义:
PRIMARY KEY 用于唯一标识表中的一条记录。每个表 只能有一个主键,它的值必须:
- 唯一(
UNIQUE) - 非空(
NOT NULL)
📚 特性:
- 每张表最多只能有一个主键
- 可以是一个字段(单主键)或多个字段组合(复合主键)
- 自动创建唯一索引,加快查询速度
- 是关系型数据库设计中最基础且重要的约束之一
3. MySQL相关命令
1. 处理数据库
-- 创建sql_tutorial 数据库
CREATE DATABASE sql_tutorial;
-- 展示所有已创建的数据库
SHOW DATABASES;
-- 删除名为sql_tutorial的数据库
DROP DATABASE sql_tutorial;
-- 设置数据库为只读模式
-- 该模式下无法修改数据库,只能访问其中的数据
ALTER DATABASE myDB READ ONLY = 1;
-- 撤回只读模式
ALTER DATABASE myDB READ ONLY = 0;
2. 处理表格
-- 选择要使用的数据库
USE sql_tutorial;
-- 创建表格
CREATE TABLE student(
student_id INT PRIMARY KEY,
name VARCHAR(20),
majior VARCHAR(20)
-- PRIMARY KEY也可以这样创建
-- PRIMARY KEY(student_id);
);
-- 将表格重命名
RENAME TABLE student TO stduents;
-- 查看创建的表格
DESCRIBE student;
-- 删除表格
DROP TABLE student;
-- 为表格新增属性
ALTER TABLE student
ADD gpa DECIMAL(3,2);
-- 重命名表格中某一内容
ALTER TABLE student
RENAME COLUMN major TO majors;
-- 修改表格中数据属性
ALTER TABLE student
MODIFY name VARCHAR(30);
-- 修改表格中数据位置
ALTER TABLE student
MODIFY name VARCHAR(30)
AFTER major;
-- 放在第一个位置
ALTER TABLE student
MODIFY name VARCHAR(30)
FIRST;
-- 删除表格属性
ALTER TABLE student
DROP COLUMN gpa;
3. 存入数据
-- 存入数据
INSERT INTO student
VALUES(1,'小白','历史'); -- 单双引号均可
INSERT INTO student
VALUES(2,'小绿',NULL); -- NULL 填充位置数据
-- 也可以显式制定顺序,未填的为NULL
INSERT INTO student(major,student_id)
VALUES('英语',5);
-- 搜寻表格中全部资料
SELECT * FROM student;
4. 添加约束
-- 可以为表格添加属性
CREATE TABLE student(
student_id INT PRIMARY KEY AUTO_INCREMENT, -- 自动按次递增
name VARCHAR(20) NOT NULL, -- 不能为空
major VARCHAR(20) UNIQUE, -- 不能相同
sex VARCHAR(5) DEFAULT '女' -- 默认为女
);
5. 更新数据
-- 将英语更新为英语文学
UPDATE student
SET major = '英语文学' -- 更新内容
WHERE major = '英语'; -- 更新条件
-- 也可以这样
UPDATE student
SET name = '小黑',major = '物理'
WHERE major = '生物' OR major = '历史';
6. 删除数据
DELETE FROM student
WHERE student_id = 4 AND name = '小黑'; -- 也可用 > < = 号来判断
7. 搜寻数据
SELECT * FROM student; -- * 表示所有属性
SELECT name,major FROM student;
-- 搜寻数据,并根据分数作排序
SELECT * FROM student
ORDER BY score; -- 由低到高,默认为ASC
SELECT * FROM student
ORDER BY score DESC; -- 由高到底
-- 先根据score,在根据student_id作排序
SELECT * FROM student
ORDER BY score,student_id;
-- 查看数据为空
SELECT * FROM srudent
WHERE major IS NULL;
-- 只要前三笔数据
SELECT * FROM student
LIMIT 3;
-- 查询单条数据
SELECT * FROM student
WHERE major = '英语';
SELECT * FROM student
WHERE major IN('历史','英语','生物');
4. MySQL相关函数
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 鸿寻
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果