0824MySQL
1.数据库连接
1.连接mysql服务器
mysql -uroot -p
2.断开mysql服务器
quit;
3.使用数据库
user mydb1; 使用mydb1数据库;
4.查看当前使用的数据库
select database();
5.启动mysql服务器
net start 服务器名称
6.停止MySQL服务器
net stop 服务器名称
7.查看有哪些表
show tables;
2.MySQL数据库操作
1.创建数据库
create database 数据库名称;
2.删除数据库
drop database 数据库名称;
3.MySQL常用数据类型
1.整型
MySQL数据类型 | 含义(有符号) |
---|---|
tinyint(m) | 1个字节 范围(-128~127) |
smallint(m) | 2个字节 范围(-32768~32767) |
mediumint(m) | 3个字节 范围(-8388608~8388607) |
int(m) | 4个字节 范围(-2147483648~2147483647) |
bigint(m) | 8个字节 范围(±9.22*10的18次方) |
2、浮点型(float和double)
MySQL数据类型 | 含义 |
---|---|
float(m,d) | 单精度浮点型 8位精度(4字节) m总个数,d小数位 |
double(m,d) | 双精度浮点型 16位精度(8字节) m总个数,d小数位 |
设一个字段定义为float(6,3),如果插入一个数123.45678,实际数据库里存的是123.457,但总个数还以实际为准,即6位。整数部分最大是3位,如果插入数12.123456,存储的是12.1234,如果插入12.12,存储的是12.1200.
3、定点数
浮点型在数据库中存放的是近似值,而定点类型在数据库中存放的是精确值。
decimal(m,d) 参数m<65 是总个数,d<30且 d<m 是小数位。
4、字符串(char,varchar,_text)
MySQL数据类型 | 含义 |
---|---|
char(n) | 固定长度,最多255个字符 |
varchar(n) | 固定长度,最多65535个字符 |
tinytext | 可变长度,最多255个字符 |
text | 可变长度,最多65535个字符 |
mediumtext | 可变长度,最多2的24次方-1个字符 |
longtext | 可变长度,最多2的32次方-1个字符 |
char 定长类型,不管实际内容是多少大小,统一分配相同的存储空间
varchar 变长类型,根据实际内容的大小来分配存储空间
**相同点:**都是用于存放字符类型
优缺点:
varchar :不会造成空间的浪费,节省空间,缺点时需要系统进行计算,性能上会有损失
char: 造成空间的浪费,优点是提升性能
4.日期时间类型
MySQL数据类型 | 含义 |
---|---|
date | 日期 ‘2008-12-2’ |
time | 时间 ‘12:25:36’ |
datetime | 日期时间 ‘2008-12-2 22:06:44’ |
timestamp | 自动存储记录修改时间 |
若定义一个字段为timestamp,这个字段里的时间数据会随其他字段修改的时候自动刷新,所以这个数
据类型的字段可以存放这条记录最后被修改的时间。
5.数据类型的属性
MySQL关键字 | 含义 |
---|---|
NULL | 数据列可包含NULL值 |
NOT NULL | 数据列不允许包含NULL值 |
DEFAULT | 默认值 |
PRIMARY KEY | 主键 |
AUTO_INCREMENT | 自动递增,适用于整数类型 |
UNSIGNED | 无符号 |
CHARACTER SET name | 指定一个字符集 |
6.使用建议
- .在指定数据类型的时候一般是采用从小原则,比如能用TINY INT的最好就不用INT,这样可以提升MySQL的运行效率
- 不需要把数据表设计的太复杂,功能模块上区分或许对于后期的维护更方便
- 数据表和字段名称要用英文
- 设计数据表结构之前先想像一下是你的房间,或许结果会更加合理,高效
- 数据库的最后设计结果用定时效率和可扩展性的折中,偏向任何一方都是欠妥的