MySQL命令行启动连接及退出
启动(重启、关闭)mysql
- windows:
net start(restart、stop) mysql - linux:
server start(restart、stop) mysql
连接mysql服务器
mysql -hIP地址 -u用户名 -p密码 -p3306
1 | |
断开连接
1 | |
MySQL中的数值类型
整数类型
| 整数类型 | 字节 | 最小值 | 最大值 |
|---|---|---|---|
| tinyint | 1 | 有符号: -128 | 有符号:127 |
| 无符号:0 | 无符号:255 | ||
| smallint | 2 | 有符号:-32768 | 有符号:32767 |
| 无符号:0 | 无符号:65535 | ||
| mediumint | 3 | 有符号:-8388608 | 有符号:8388607 |
| 无符号:0 | 无符号:1677215 | ||
| int、integer | 4 | 有符号:-2147483648 | 有符号:2147483647 |
| 无符号:0 | 无符号:4294967295 | ||
| bigint | 8 | 有符号:-9223372036854775808 | 有符号:9223372036854775807 |
| 无符号:0 | 无符号:18446744073709551615 |
注: 如果值超过类型范围,会发生”out of range”错误提示,整数类型默认有符号,若需要无符号则需要加上unsigned定义,如:tinyint unsigned
显示宽度
整形支持显示宽度,即最小显示位数,比如int(11)表示最少使用11位数字表示这个数,如果位数不够,需使用zerofill,即使用0来做前导。若数字位数超过显示宽度,则显示本身。
1 | |
浮点数类型
| 浮点数类型 | 字节 | 最小值 | 最大值 |
|---|---|---|---|
| FLOAT | 4 | ±1.175494351E-38 | ±3.402823466E+38 |
| DOUBLE | 8 | ±2.2250738585072014E-308 | ±1.7976931348623157E+308 |
定点数类型
| 定点数类型 | 字节 | 描述 |
|---|---|---|
| dec(M,D), decimal(M,D) | M+2 | 最大取值范围与 DOUBLE 相同,给定 DECIMAL 的有效取值范围由 M 和 D决定 |
位类型
| 位类型 | 字节 | 最小值 | 最大值 |
|---|---|---|---|
| bit(M) | 1~8 | BIT(1) | BIT(64) |
MySQL中的字符类型
| 数据类型 | 字节 | 描述及储存需求 |
|---|---|---|
| char(M) | M | M为0~255之间的整数 |
| varchar(M) | 值的长度+1 | M 为 0~65535 之间的整数 |
| tinytext | 值的长度+2 | 允许长度 0~255 字节 |
| text | 值的长度+2 | 允许长度0~65535字节 |
| mediumtext | 值的长度+3 | 允许长度0~167772150字节 |
| longtext | 值的长度+4 | 允许长度0~4294967295字节 |
1 | |
举个栗子:
1 | |
1 | |
MySQL中的枚举类型
枚举类型简单来说,插入数据时就是从你创建时所枚举的值的集合中选取一个值插入,插入其他值报错,可直接输入值插入,也可以使用下标插入
注:如插入的为字母,不区分大小写
1 | |
MySQL中的set类型
set类型与enum类型十分类似,也是椅子字符串对象,里面可以包含0~64个对象。
Set 和 ENUM 除了存储之外,最主要的区别在于 Set 类型一次可以选取多个成员,而 ENUM 则只能选一个。
1 | |
MySQL中的时间类型
| 日期和时间类型 | 字节 | 最小值 | 最大值 |
|---|---|---|---|
| data | 4 | 1000-01-01 | 9999-12-31 |
| time | 3 | -838:59:59 | 838:59:59 |
| datatime | 8 | 1000-01-01 00:00:00 | 9999-12-31 23:59:59 |
| year | 1 | 1901 | 2155 |
| timestamp | 4 | 19700101080001 | 2038 年的某个时刻 |
- data: 仅表示时间的日期部分,如:2008-08-08
- time: 表示时间部分,也表示时间间隔,如:11:11:11
- datatime: datatime时data与time的组合,如: 2008-08-08 11:11:11
- year: 占用一个字节,最多只能是255个数,以1900年为基数,范围1900+1 ~ 1900+255
- timestamp: 时间戳,从1970年1月1日 00:00:00秒的格林威治时间开始计算,在python中是特殊类型,但在mysql中显示为datatime格式
1 | |
注: 如需要插入当前时间,可以使用now()进行插入
MySQL中的布尔类型
mysql不支持布尔型,所以用1和0代替.
1 | |
