SQL——DDL操作_和_DML操作(V1.0)

注:本篇文章中是对SQL操作的基础部分(未涉及约束索引等知识点)

一、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 数据类型,
	....
);

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 新表名;

二、DML(v1.0)

1、添加数据

insert into 【数据库名.]表名称 values(值列表)#要求值列表的顺序、个数、类型,要与表格中的字段的顺序、个数、类型一一匹配
#(字符的话需要单引号)(单双引号都可以)
insert into 【数据库名.]表名称(部分字段列表) values(值列表)#要求列表的顺序、个数、类型,要与前面的(部分字段列表)的顺序、个数、类型一一匹配
#多个插入
insert into 【数据库名.]表名称 values(值列表1)(值列表2)。。。;

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、DQL简单查询

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

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

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

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

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


版权声明:本文为qq_36640480原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。