mysql一些简单操作

创建数据库,删除数据库

create database databasename charset utf8 collate utf8_general_ci;设置字符集utf8,校对规则utf8_general_ci

drop database databasename;

创建表,删除表

create table tablename(
id int auto_increment primary key,
content varchar(200),
age int
) engine myisam charset utf8;

drop table tablename;

告诉服务器我的字符集,要和服务器表的字符集一样

set names gbk/utf8

查看表结构

desc tablename

查看创建库/表

show create database databasename

show create table tablename

插入数据

insert into tablename (id,name) values (1,'lilei'),(2,'hanmeimei');

修改表

update tablename set name='poly',age=18 where id=2

查询数据值为null/不为null

select * from tablename where name is null/is not null

查询顺序

where,group by,having,order by,limit(更好哦了)

子查询

where,from,exist,

清空表

truncate tablename 速度快,如果有自增长id,id初始化

delete from tablename where id=1;(不加where是全删)

delete from tablename 有自增长id,不变,以下是百度的:

TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。   DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。
TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。
TRUNCATE,DELETE,DROP放在一起比较:
TRUNCATE TABLE:删除内容、释放空间但不删除定义。
DELETE TABLE:删除内容不删除定义,不释放空间。
DROP TABLE:删除内容和定义,释放空间。truncate删除的更彻底,所有的日志记录都会没有,并且是一把全清,不会有where条件。还有个比较大的区别就是truncate后自增长的ID列也会归零,以后插入记录ID从1开始。但是delete后你再插入记录,ID会从上次最大的数字开始。delete 可以配合where条件


原文地址:https://www.cnblogs.com/maidongdong/p/8836934.html