一、命令行登入和登出MySQL数据库
- 以管理员方式运行cmd命令行程序
- 登录数据库命令:mysql -u root -p
- 退出数据库命令:exit或quit
- 显示当前时间:select now();
二、数据库操作SQL语句
-----------------------------------------数据库操作----------------------------------------
查看所有数据库:show databases;
创建数据库:create database 数据库名 charset=utf8;
使用数据库:use 数据库名;
查看当前使用的数据库:select database();
删除数据库:drop database 数据库名;
三、表结构操作SQL语句
------------------------------------------表结构操作--------------------------------------
查看当前数据库所有表:show tables;
创建表:
create table 表名(
字段名 数据类型 约束条件,
);
修改表:
添加字段:alter table 表名 add 列名 类型 约束;
修改字段类型:alter table 表名 modify 列名 类型 约束;
修改字段名和字段类型:alter table 表名 change 原名 新名 类型及约束;
注:
modify: 只能修改字段类型或者约束,不能修改字段名
change: 既能修改字段名又能修改字段类型和约束
删除字段:alter table 表名 drop 列名;
查看创表SQL语句:show create table 表名;
查看创库SQL语句:show create database 数据库名;
删除表:drop table 表名;
举例如下
四、表数据操作SQL语句
------------------------------------------查询数据---------------------------------------
查询所有列:select * from 表名;
查询指定列:select 列1,列2,... from 表名;
------------------------------------------添加数据---------------------------------------
全列插入:值的顺序与表结构字段的顺序一一对应
insert into 表名 values (...)
部分列插入:值的顺序与给出的列顺序对应
insert into 表名 (列1,...) values(值1,...)
全列多行插入:insert into 表名 values(...),(...)...;
部分列多行插入:insert into 表名(列1,...) values(值1,...),(值1,...)...;
------------------------------------------修改数据---------------------------------------
修改数据:update 表名 set 列1=值1,列2=值2... where 条件
------------------------------------------删除数据---------------------------------------
物理删除,一旦删除就不容易恢复
delete from 表名 where 条件
逻辑删除
添加删除表示字段,0表示未删除 1表示删除
alter table 表名 add isdelete bit default 0;
update 表名 set isdelete = 1 where 条件;
举例如下
五、as和distinct关键字
语法如下
as给字段起别名[可为中文]:使显示结果时显示的字段名具有更好的可读性
select name as 姓名,age as 年龄 from 表名;
as给表起别名
如:
select students.id,students.name,students.gender from students;
起别名为s:select s.id,s.name,s.age from students as s;
distinct关键字:去除重复数据行
select distinct 列1,列2... from 表名;
举例如下
六、排序和分页
排序查询语法:
select * from 表名 order by 列1 asc|desc [,列2 asc|desc,...];
分页查询语法:
select * from 表名 limit start,count;
已知每页显示m条数据,求第n页显示的数据
注:关键是求每页的开始行索引
语法:
select * from 表名 limit (n-1)*m,m
说明
- 排序
- 先按列1排序,若列1相同,则按列2排序,以此类推
- asc:从小到大排序,即升序
- desc:从大到小排序,即降序
- 默认按列值从小到大排序
- 分页
- limit:分页查询关键字
- start:开始行索引,不写默认为0
- count:查询条数
- limit 关键字可以限制数据显示数量,通过 limit 关键可以完成分页查询
举例如下
七、where 条件查询
使用where条件查询可在表中筛选出满足条件的数据
where语句支持的运算符
- 比较运算符:<、=、>、<=、>=、!=或<>(不等于)
- 逻辑运算符:and、or、not
- 模糊查询
- like:模糊查询关键字
- %:任意多个任意字符
- _:表示一个任意字符
- 范围查询
- between…and…:表示在一个连续范围内查询
- in:表示在一个非连续范围内查询
- 空判断
- 判断为空:is null
- 判断非空:is not null
学习导航:http://xqnav.top