【MySQL】SQL

**DDL (Data Definition Language) :数据定义语言,定义库,表结构等,包括create,drop,alter等 **

DML (Data Manipulation Language) :数据操作语言,增删改查数据,包括insert,delete,update,select等

DQL(Data query Language):数据查询语言 select

DCL(Data Control Language) :数据控制语言,权限,事务等管理。

mysql 关键字 数据库名 表名不区分大小写

1、 DDL(v1.0)

1、查看所有数据库

show databases;

2、指定使用某个数据库

use 数据库名;

3、创建数据库

create database 数据库名;

create database 数据库名 charset 'utf8'; #在mysql中字符集名称不要使用utf-8

create database 数据库名 charset 'gbk';

4、删除数据库

drop database 数据库名;

5、查看某个库下的所有表格

show tables ;  #前提是前面有use 数据库名;的语句
show tables from 数据库名;

6、创建表格

create table 【数据库名.】表名(
	字段名1 数据类型,
	字段名2 数据类型,
	....
);

通常要配合使用 use database名

7、删除表格

drop table 【数据库名.]表名称;

8、查看某个表结构

describe 【数据库名.]表名称;
desc 【数据库名.]表名称;

9、增加一列

alter table 【数据库名.]表名称 addcolumn】 字段名 数据类型;
alter table 【数据库名.]表名称 addcolumn】 字段名 数据类型 first;
alter table 【数据库名.]表名称 addcolumn】 字段名 数据类型 after 另一个字段;

10、删除一列

alter table 【数据库名.]表名称 dropcolumn】 字段名;

11、修改列数据类型

alter table 【数据库名.]表名称 modifycolumn】 字段名 新数据类型;

12、修改列名

alter table 【数据库名.]表名称 change【column】 旧字段名 新字段名 新数据类型;

13、修改列的位置

alter table 【数据库名.]表名称 modifycolumn】字段名 数据类型 first;
alter table 【数据库名.]表名称 modifycolumn】字段名 数据类型 after 另一个字段;

14、修改表名称

alter table 旧表名 rename 新表名;
rename table 旧表名 to 新表名;

2、 DML(v1.0)

1、添加数据

insert into 【数据库名.]表名称 values(值列表)#要求值列表的顺序、个数、类型,要与表格中的字段的顺序、个数、类型一一匹配

insert into 【数据库名.]表名称(部分字段列表) values(值列表)#要求列表的顺序、个数、类型,要与前面的(部分字段列表)的顺序、个数、类型一一匹配

insert into 【数据库名.]表名称 values(值列表1)(值列表2)。。。;

insert into 【数据库名.]表名称(部分字段列表) values(值列表1)(值列表2)。。。;
insert into lianxi.teacher(tid,tname) values(1,"李华")(2,“袁崇焕”)insert into [数据库名.]表名 set 字段名=, 字段名=......;

总结:
insert into [数据库名.]表名 set 字段名=值, 字段名=值;
insert into 【数据库名.]表名称 values(值列表1),(值列表2)。。。;
2、修改数据

update 【数据库名.]表名称 set 字段名1 =1, 字段名2 =2 。。。 【where 条件】;

如果没有加where条件,表示修改所有行的这个字段的值。

3、删除数据

delete from 【数据库名.]表名称 【where 条件】;

如果没有where条件,表示删除整张表的数据;

truncate 【数据库名.]表名称;#删除整张表的数据,还可以使用这个语句,效率更高,但是它不能回滚

用delete删除整张表和用truncate删除整张表的数据的区别?

(1)truncate速度快

(2)truncate无法回滚

truncate因为底层是把表drop掉,然后新建了一张空表。

delete因为底层是一行一行删数据。

4、简单查询数据

select * from 【数据库名.]表名称; #查询整张表的所有数据

select 字段列表  from 【数据库名.]表名称;  #查询部分列表
select id,sname from teacher;

select * from 【数据库名.]表名称 【where 条件】;

select 字段列表  from 【数据库名.]表名称 【where 条件】;
select distinct id from teacher;         挑选ID并去重

使用distinct可以对查询结果进行去重

查询给字段起别名 字段名【as】别名
如果别名包含空格或是关键字使用引号包裹。

select id,sname as 名字 from 表名; 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值