sql语句的注意 : 1 以;作为结束符 2 不区分大小写
01 mysql数据库的操作
- --链接数据库
- mysql -uroot -pmysql
- --退出数据库
- exit/quit/ctrl+d
- --显示数据库版本 version
- select version();
- --显示时间()
- select now();
- 查看当前使用数据库
- show database();
- 查看所有数据库
- show databases;
- 创建数据库
- create database python charset=utf8;
- 查看创建数据库的语句
- show create database python;
- 使用数据库
- use python;
- 删除数据库
- drop database python;
02数据表的操作
查看当前数据库中的所有表
show tables;
创建表
int unsigned 无符号整形
auto_increment 表示自动增长
not null 表示不能为空
primary key 表示主键
default 默认值
create table 数据表名字 (字段 类型 约束[, 字段 类型 约束]);
create table xxx(
id int unsigned primary key not null auto_increment,
name varchar(20) not null
);
查看表结构
desc xxxx;
查看表的创建语句
show create table xxx;
修改表-添加字段 mascot()
alter table classes add chongwu varchar(20) default"蛇";
修改表-修改字段:不重命名版
alter table classes modify mascot vachar(30) default"葫芦娃";
修改表-修改字段:重命名版
alter table classes change chongwu mascot varchar(20) default"法拉利";
修改表-删除字段
alter table classes drop mascot;
删除表
drop table 表名
03增删改查(crud)
-增加
- insert into classes values(...);
- 部分插入
- insert into classes(name) values();
- 多行插入
- insert into classes values(),();
-修改
- 全部修改
- update classes set high = 170.00;
- 按条件修改
- update classes set high = 170.00 where id = 3;
- update classes set gender = "中性",name="111;
-基本查询
- 查询所有列
- select * from classes;
- 条件查询
- select * from classes where id =1;
- 查询指定列
- select name,gener from classes;
- 使用as为列或表指定别名
- select name as "姓名",gender as "性别" from classes;
-删除
- 物理删除
- delete from 表名 where 条件
- delete from classes where id = 3;
- 逻辑删除
- 用一个字段来表示这条信息是否已经不能使用 了
- 给classes表添加一个is_delete 字段bit类型
- alter table classes add is_delete bit default 0;
- update classes set is_delete = 1 where id =1;
-数据库备份与恢复
- mysqldump -uroot -p 数据库名 > python.sql
- mysql -uroot -p 新数据库名 < python.sql