基础操作
约 775 字大约 3 分钟
2026-04-13
创建数据库
使用 create 命令创建数据库:
CREATE DATABASE [IF NOT EXISTS] 数据库名
[CHARACTER SET 字符集]
[COLLATE 排序规则];如果你希望在创建数据库时指定一些选项,可以使用 CREATE DATABASE 语句的其他参数,例如,你可以指定字符集和排序规则:
CREATE DATABASE test
CHARACTER SET utf8mb4
COLLATE utf8mb4_general_ci;如果数据库已经存在,执行 CREATE DATABASE 将导致错误。
为了避免这种情况,你可以在 CREATE DATABASE 语句中添加 IF NOT EXISTS 子句:
CREATE DATABASE IF NOT EXISTS test
CHARACTER SET utf8mb4
COLLATE utf8mb4_general_ci;删除数据库
在删除数据库过程中,务必要十分谨慎,因为在执行删除命令后,所有数据将会消失。
使用 drop 命令删除数据库:
DROP DATABASE 数据库名;
DROP DATABASE IF EXISTS 数据库名;选择数据库
使用 use 命令选择数据库:
USE 数据库名;选择数据库后,你的后续 SQL 查询和操作在指定的数据库上执行。
还可以这样选择:
mysql -u 用户名 -p -D 数据库名- -u 用户名: 指定要连接的数据库用户名。
- -p: 提示输入密码。
- -D 数据库名: 指定要连接的数据库名称。
数据类型
数值类型
| 类型 | 大小 | 范围(有符号) | 范围(无符号) | 用途 |
|---|---|---|---|---|
| TINYINT | 1字节 | (-128,127) | (0,255) | 小整数 |
| SMALLINT | 2字节 | (-32768,32767) | (0,65535) | 中整数 |
| MEDIUMINT | 3字节 | (-8388608,8388607) | (0,16777215) | 大整数 |
| INT | 4字节 | (-2147483648,2147483647) | (0,4294967295) | 整数 |
| BIGINT | 8字节 | (-9223372036854775808,9223372036854775807) | (0,18446744073709551615) | 大整数 |
| FLOAT | 4字节 | (-3.402823466E+38,-1.175494351E-38),0,(1.175494351E-38,3.402823466351E+38) | (0,1.175494351E-38,3.402823466E+38) | 浮点数 |
| DOUBLE | 8字节 | (-1.7976931348623157E+308,-2.2250738585072014E-308),0,(2.2250738585072014E-308,1.7976931348623157E+308) | 0,(2.2250738585072014E-308,1.7976931348623157E+308) | 双精度浮点数 |
| DECIMAL | 对DECIMAL(M,D) ,如果M>D,为M+2否则为D+2 | 依赖于M和D的值 | 依赖于M和D的值 | 小数值 |
日期和时间类型
| 类型 | 大小 | 范围 | 格式 | 用途 |
|---|---|---|---|---|
| DATE | 3字节 | 1000-01-01 至 9999-12-31 | YYYY-MM-DD | 日期 |
| TIME | 3字节 | 00:00:00 至 23:59:59 | HH:MM:SS | 时间 |
| DATETIME | 8字节 | 1000-01-01 00:00:00 至 9999-12-31 23:59:59 | YYYY-MM-DD HH:MM:SS | 日期时间 |
| TIMESTAMP | 4字节 | 1970-01-01 00:00:01 至 2147-03-31 23:59:59 | YYYY-MM-DD HH:MM:SS | 时间戳 |
| YEAR | 1字节 | 1901 至 2155 | YYYY | 年 |
字符串类型
| 类型 | 大小 | 用途 |
|---|---|---|
| VARCHAR | 0-65535字节 | 变长字符串 |
| CHAR | 0-255字节 | 定长字符串 |
| TINYBLOB | 0-255字节 | 不超过 255 个字符的二进制字符串 |
| TINYTEXT | 0-255字节 | 短文本字符串 |
| BLOB | 0-65535字节 | 二进制形式的长文本数据 |
| TEXT | 0-65535字节 | 长文本数据 |
| MEDIUMBLOB | 0-16777215字节 | 二进制形式的中等长度文本数据 |
| MEDIUMTEXT | 0-16777215字节 | 中等长度文本数据 |
| LONGBLOB | 0-4294967295字节 | 二进制形式的极大文本数据 |
| LONGTEXT | 0-4294967295字节 | 极大文本数据 |
枚举与集合类型
| 类型 | 大小 | 用途 |
|---|---|---|
| ENUM | 0-65535字节 | 枚举值列表 |
| SET | 0-65535字节 | 集合值列表 |