❤ 系列内容 ❤
Mysql从入门到入魔——1. 数据准备(起航篇)
Mysql从入门到入魔——2. 操纵数据库和表
Mysql从入门到入魔——3. 查询、排序、WHERE过滤
Mysql从入门到入魔——4. 通配符、计算字段、函数
Mysql从入门到入魔——5. 聚集、分组、子查询
Mysql从入门到入魔——6. 表联结、组合查询
Mysql从入门到入魔——7. 插入、更新和删除
Mysql从入门到入魔——8. 视图、存储过程、事务处理
Mysql从入门到入魔——9. 游标、高级SQL特性
Mysql从入门到入魔——10. 知识点速记(完结)
本篇主要内容
本篇是《Mysql从入门到入魔》系列最后一篇,写这个系列是为了系统的复习一下 Mysql
的基础知识,同时希望能够将学习的笔记分享更多的人,文章中的栗子有的使用的是书上的栗子,有的难懂的部分就自己写栗子,图个通俗易懂吧,后面如果有时间还会继续修改之前的文章,希望能够对大家有一些帮助。本篇写的主要是 Mysql
中的一些常用语法,以及常见数据类型,话不多说,进入正题!
ALTER TABLE
用来更新已存在表的模式。
ALTER TABLE tablename
(
ADD column datatype [NULL|NOT NULL] [CONSTRAINTS],
CHANGE column datatype [NULL|NOT NULL] [CONSTRAINTS],
DROP column,
...
);
详细使用:Mysql从入门到入魔——2. 操纵数据库和表
COMMIT
用来将事务处理写到数据库。
详细使用:Mysql从入门到入魔——8. 视图、存储过程、事务处理
CREATE INDEX
用于在一个或多个列上创建索引。
CREATE INDEX indexname
ON tablename (column [ASC|DESC], ...);
详细使用:Mysql从入门到入魔——9. 游标、高级SQL特性
CREATE PROCEDURE
用于创建存储过程。
CREATE PROCEDURE procedurename([parameters])
BEGIN
...
END;
详细使用:Mysql从入门到入魔——8. 视图、存储过程、事务处理
CREATE TABLE
用于创建新数据库表。
CREATE TABLE tablename
(
column datatype [NULL|NOT NULL] [CONSTRAINTS],
column datatype [NULL|NOT NULL] [CONSTRAINTS],
...
);
详细使用:Mysql从入门到入魔——2. 操纵数据库和表
CREATE VIEW
用来创建一个或多个表上的新视图。
CREATE [OR PEPLACE] VIEW viewname
AS
SELECT ...
FROM ...;
详细使用:Mysql从入门到入魔——8. 视图、存储过程、事务处理
DELETE
从表中删除一行或多行。
DELETE FROM tablename
[WHERE ...];
详细使用:Mysql从入门到入魔——7. 插入、更新和删除
DROP
永久地删除数据库对象(表、视图、索引等)。
DROP DATABASE|INDEX|PROCEDURE|TABLE|VIEW itemname;
详细使用:Mysql从入门到入魔——2. 操纵数据库和表
INSERT
给表插入数据。
详细使用:Mysql从入门到入魔——7. 插入、更新和删除
INSERT SELECT
插入 SELECT
的结果到一个表。
INSERT INTO tablename[(columns, ...)]
SELECT columns, ...
FROM tablename, ...
[WHERE ...];
详细使用:Mysql从入门到入魔——7. 插入、更新和删除
ROLLBACK
用于撤销一个事务处理块。
ROLLBACK [TO savepointname]
详细使用:Mysql从入门到入魔——8. 视图、存储过程、事务处理
SAVEPOINT
为使用 ROLLBACK
语句设立保留点。
SAVEPOINT savepointname;
详细使用:Mysql从入门到入魔——8. 视图、存储过程、事务处理
SELECT
用于从一个或多个表(视图)中检索数据。
SELECT columnname, ...
FROM tablename, ...
[WHERE ...]
[UNION ...]
[GROUP BY ...]
[HAVING ...]
[ORDER BY ...];
详细使用:Mysql从入门到入魔——3. 查询、排序、WHERE过滤
START TRANSACTION
表示一个新的事务处理块的开始。
START TRANSACTION;
详细使用:Mysql从入门到入魔——8. 视图、存储过程、事务处理
UPDATE
更新表中一行或多行。
UPDATE tablename
SET columnname = value, ...
[WHERE ...];
详细使用:Mysql从入门到入魔——7. 插入、更新和删除
最常用的数据类型是串数据类型。它们存储字符串,如名字、地址、邮箱等。有两种基本的串类型,分别为定长串和变长串。
CHAR
属于定长串类型。TEXT
属于变长串类型。二者比较:虽然变长数据类型使用灵活,但会降低性能。MySQL
处理定长列远比处理变长列快得多。此外,MySQL
不允许对变长列(或一个列的可变部分)进行索引。这也会极大地影响性能。
数据类型 | 说明 |
---|---|
CHAR |
1~255个字符的定长串。它的长度必须在创建时指定,否则 MySQL 默认为 CHAR(1) |
ENUM |
接受最多 64 K 个串组成的一个预定义集合的某个串 |
LONGTEXT |
最大长度为 4 GB 的变长文本 |
MEDIUMTEXT |
最大长度为 16 K 的变长文本 |
SET |
接受最多 64 个串组成的一个预定义集合的零个或多个串 |
TEXT |
最大长度为 64 K 的变长文本 |
TINYTEXT |
最大长度为 255 字节的变长文本 |
VARCHAR |
长度可变,最多不超过 65535 字节。如果在创建时指定为 VARCHAR(n) , 则可存储 0~n个字符的变长串(其中n ≤ 65535,根据指定的字符集可能有所改变) |
数值数据类型存储数值。MySQL
支持多种数值数据类型,不同数据类型的存储范围不同,所需存储空间也不同,支持的取值范围越大,所需存储空间越多。此外,有的数值数据类型支持使用十进制小数点(和小数),而有的则只支持整数。
数据类型 | 说明 |
---|---|
BIT |
位字段,1~64 位。 |
BIGINT |
整数值,支持 -9223372036854775808~9223372036854775807 (如果是UNSIGNED,为0~18446744073709551615)的数 |
BOOLEAN (或BOOL ) |
布尔标志,或者为 0 或者为 1 |
DECIMAL (或DEC ) |
精度可变的浮点值 |
DOUBLE |
双精度浮点值 |
FLOAT |
单精度浮点值 |
INT (或INTEGER ) |
整数值,支持 -2147483648~2147483647(如果是 UNSIGNED , 为 0~4294967295 )的数 |
MEDIUMINT |
整数值,支持 -8388608~8388607(如果是 UNSIGNED ,为 0~ 16777215 )的数 |
REAL |
4 字节的浮点值 |
SMALLINT |
整数值,支持 -32768~32767(如果是 UNSIGNED ,为 0~ 65535 )的数 |
TINYINT |
整数值,支持 -128~127(如果为 UNSIGNED ,为 0~255 )的数 |
MySQL使用专门的数据类型来存储日期和时间值
数据类型 | 说明 |
---|---|
DATE |
表示 1000-01-01~9999-12-31 的日期,格式为 YYYY-MM-DD |
DATETIME |
DATE 和 TIME 的组合 |
TIMESTAMP |
功能和 DATETIME 相同(但范围较小) |
TIME |
格式为 HH:MM:SS |
YEAR |
用 2 位数字表示,范围是70(1970年)~69(2069 年),用4位数字表示,范围是1901年~2155年 |
二进制数据类型可存储任何数据(甚至包括二进制信息),如图像、多媒体、字处理文档等。
数据类型 | 说 明 |
---|---|
BLOB |
Blob 最大长度为 64 KB |
MEDIUMBLOB |
Blob 最大长度为 16 MB |
LONGBLOB |
Blob 最大长度为 4 GB |
TINYBLOB |
Blob 最大长度为 255字节 |
参考书籍:《Mysql必知必会》
这就是本文所有的内容了,如果感觉还不错的话。❤ 点个赞再走吧!!!❤
后续会继续分享 Mysql 方面的文章,如果感兴趣的话可以点个关注不迷路哦~。