“”"
字段类型:
数字: int(整数) decimal(小数)
decimal(5,2) 总共五位数,包含两位小数
字符串:
char 有限
varchar 有限
text 无限
char和varchar的区别
char存的字符是固定的
varchar存的字符是不固定的
字符编码问题
gb2312(国标)
utf8(国际通用的标准)
日期:
datetime
布尔:
bit
“”"
“”“ 约束: 主键:primary key 非空:not null 唯一:unique 默认:default 外键:foreign key ”""
“”“ 逻辑删除 1.对于重要的数据,并不希望物理删除,一旦删除,数据无法找回 2.一般对于重要数据,会设置一个isDelete的列,类型为bit,表示逻辑删除 3.对于大量增长的非重要数据,可进行物理删除 4.数据的重要性,要根据实际开发决定 ”""
“”" 操作库 创建数据库 create database 数据库名 charset=utf8; 查看当前选择的数据库 show databases 删除数据库 drop database 数据库名 切换数据库 use 数据库名 查看当前用的是哪个数据库 select database()
表操作
查看当前的数据库中的所有表
show tables
创建表
create table 表名(列及类型)
自动增长
auto_increment
主键
primary key
非空
not null
create table students(
id int auto_increment primary key not null,(主键)
name varchar(10) not null,
sex bit default 1,
birthday datatime
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
查看表:
desc 表名字
修改表:
alter table 表名 add|change|drop 列名 类型;
alter table students add isDetele bit default 0;
删除表:
drop table 表名
更改表名称
rename table 原表名 to 新表名
查看创建表的语法
show create table ‘表名’
"""
“”“
数据操作
查询
select * from 表名
增加
全列插入:
insert into 表名 values(0,‘skl’,1,‘1990-1-1’,0);
insert into 表名(‘字段’) values(‘值’);
insert into 表名(‘字段’) values(‘哈哈’),(‘哈哈1’),(‘哈哈2’);
修改
update 表名 set (字段)birthday=‘1995-12-30’ where id=2
删除
delete from 表名 where id=3
逻辑删除 相当于 update
”""
“”" 备份与恢复 数据备份 进入超级管理员 sudo -s 进入mysql库目录 cd /var/lib/mysql 运行mysqldump命令 mysqldump -uroot -p 数据库名 >~/desktop/备份文件.sql 数据恢复 mysql -uroot -p 库名 < 迁移.sql
“”"