MYSQL一些命令①

6 阅读2分钟

登录数据库

mysql -uroot -p

退出数据库

 quit
 exit
 ctrl+d

展示所有数据库

show databases;

创建数据库

create database 库名;

使用数据库

use 库名;

删除数据库(慎用)

drop datgabase 库名;

查看当前数据库中所有的表

show tables;

创建表

reate table student(
    id int,
    myname varchar(60),
    content text,
    brith date,
    money decimal(5,2),
    addtime datetime,
    sex enum('男','女')
)default charset=utf8;

删除表

drop table 表名;

查看创建表的信息

show create table 表名;

修改表-表字段名

alter table 表名 change;
alter table 表名 change 旧名 新名 新的字段类型

修改表-修改字段类型

alter table 表名 modify 列名 类型 约束;
alter table student modify money decimal(10,2) not null;

修改表-添加一个字段

alter table 表名 add 列名 类型 约束;
alter table student add age tinyint(120) not null;

查看表结构

dese 表名;

修改表-修改字段名和字段类型

alter table 表名 change 原名 新名 类型及约束;
alter table students change birthday birth datetime not null;
  • change:既能对字段重命名又能修改字段类型还能修改约束

修改表-删除字段

alter table 表名 drop 列名;
alter table students drop birthday;

查看创建表SQL

show create table 表名;
show create table students;

查看创建库SQL

show create database 数据库名;
show create database mytest;

删除表

drop table 表名;
drop table students;

查询数据

select * from 表名;
select * from students;

查询指定列

select1,列2,... from 表名;
select id,name from students;

添加数据

全列插入:值的顺序与表结构字段的顺序完全一一对应

insert inot 表名 values()
insert into students values(0,'xx',default,default,'男');

部分列插入:值的顺序与给出的列顺序对应

insert into 表名(列1,...) values(值1,...);
insert into students(name,age) values('王小二',15);

全列多行插入

insert into 表名 values(...),(...)...;
insert into student values(0,'张飞',55,1.75,'男'),(1,'关羽',58,1.85,'男');

部分列多行插入

insert into 表名(列1,...) values(),()...;
insert into students(name,height) values('刘备',1.75),('曹操',1.6);

修改数据

update 表名 set 列1=值1,列2=值2... where 条件;
update students set age=18,gender='女' where id=6;

删除问题

delete from 表名 where 条件;
delete from students where id=5;
  • 物理删除,一旦删除就不容易恢复,可以使用逻辑删除的方式来解决这个问题

添加删除表示字段,0表示未删除,1表示删除

alter table students add isdelete bit default 0;

逻辑删除数据

update students set isdelete =1 where id=8;
  • 逻辑删除,本质就是修改操作