数据库常用的sql语句汇总

326 阅读2分钟

数据库相关

  • 查所有数据库 show databases;
  • 创建数据库 create database 数据库名;
  • 查看数据库 show create database 数据库名; //显示当初创建这个库的时候使用什么样的sql语句
  • 创建数据库指定字符集 create database 数据库名 character set utf8/gbk
  • 删除数据库 drop database 数据库名;
  • 使用数据库 use 数据库名;

表相关

  • 创建表 create table 表名(id int,name varchar(10)); //表名区分大小写
  • 查看所有表 show tables;
  • 查看单个表属性 show create table 表名; //使用的什么创建语句,可以在后面加\G使描述更清晰
  • 查看表字段 desc 表名;
  • 创建表指定引擎和字符集 create table 表名(id int,name varchar(10)) engine=myisam/innodb charset=utf8/gbk;
  • 删除表 drop table [if exists] 表名;删除表(可选择添加是否存在则删除)
    在这里插入图片描述

约束

  • not null 非空
  • default 默认约束语句,用于约束对应列中的值的默认值,除非默认值为空值,否则不可插入空值
  • unique 唯一约束语句,用于约束对应列中的值不能重复,可以有空值,但只能出现一个空值
  • primary 主键 = 唯一 + 非空
  • auto_increment 自动增长,用于系统自动生成字段的主键值
  • foreign key(从表id) reference 主表名(id); 表与表之间建立联系

修改表

  • 修改表名 rename table 旧表名 to 新表名;
  • 修改表名 alter table 旧表名 rename 新表名
  • 修改字段数据类型 alter table 表名 modify 字段名 数据类型
  • 修改表属性 alter table 表名 engine=myisam/innodb charset=utf8/gbk;
  • 添加表字段 alter table 表名 add 新字段名 新数据类型 [约束] [first/after 已存在字段名];
  • 删除表字段 alter table 表名 drop 字段名;
  • 修改表字段名和类型 alter table 表名 change 旧字段名 新字段名 类型;
  • 修改表的类型和位置 alter table 表名 modify 字段名 类型 first/after 已存在字段名;
  • 删除表 drop table 表名;
  • 更改表的存储引擎 alter table 表名 engine = 新的存储引擎;
  • 删除表的外键约束 alter table 表名 drop foreign key 外键名; //删除所有的外键之后,才能删除对应的主键所在的表

数据相关

  • 插入数据: insert into 表名 values(5,'xiaoming',null); insert into 表名 (字段名1,字段名2...) values (2,'aa'...); insert into 表名 values(5,'xiaoming',null),(5,'xiaoming',null),(5,'xiaoming',null); insert into 表名 (字段名1,字段名2) values (2,'aa'),(2,'aa'),(2,'aa');

  • 查询 select * from 表名; select name from 表名; select * from 表名 where id=10;

  • 修改 update 表名 set 要修改的字段名=100 where 根据字段名=10;

  • 删除 delete from 表名 where 字段名=10;