mysql 命令总结

1.连接mysql (mysql -u  主机 -u 用户名 -p )

       -h:主机名(或者ip)

       -u :用户名(一般默认是root)

-P:端口号(默认是3306)

-p:连接数据库的密码

2.数据库的操作

1)show databases(展示所有数据库)

2)use 数据库名(选择使用的数据库)

3)select version();(查询当前数据库的版本)

4)CREATE DATABASE [IF NOT EXISTS] <数据库名>[[DEFAULT] CHARACTER SET <字符集名>] [[DEFAULT] COLLATE <校对规则名>];(创建数据库)

[]中的内容是可选项,IF NOT EXISTS意思是不存在是创建,[DEFAULT] CHARACTER SET设置创建数据库的字符集,[DEFAULT] COLLATE指定字符集的默认校对规则(例如:utf8_bin等)

5)select database();(查看当前操作的数据库)

6)drop database 数据库名(删除数据库,请谨慎使用)

7)show create database 数据库名(查看创建数据库语句)

8)aleter database 数据库名 character set utf8(将数据库编码修改为utf-8,注意命令中utf8没有横杠)

3.数据表操作

1)表创建

 例如:CREATE TABLE `lt_article` (
                   `id` int(10) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY,
                   `title` varchar(20) NOT NULL,
                   ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8

 int(10) varchar(20)字段类型,还有其他的char、decimal等常用类型

unsigned符号不为负,默认可以为负,非必填项

NOT NULL不为空,默认可以为空,非必填项

AUTO_INCREMENT 字段自增一般作为主键

PRIMARY KEY 主键

ENGINE=InnoDB数据表是InnoDB支持事务的类型(还有MYISAM轻量型不支持事务,其他BDB、HEAP、ISAM、MERGE接触不多没去了解)

AUTO_INCREMENT=2 数据表下一次添加数据的id值是2

DEFAULT CHARSET=utf8 设置创建数据表的字符集

另外创建表的时候由于黑窗口敲打不方便,可以先在文档打好复制上去。
       2)展示数据表(show tables;)

3) 删除表 (drop table 表名)

4)修改表名(alter table  原表名 rename 新表名)

5) 添加表字段(alter table 表名 add 字段名 字段类型 其他(参考创建表))

6)删除表字段(alter table 表名 drop 要删除的字段名)

7)修改字段 

(1)修改字段的属性   

alter table 表名 modify 字段名 字段要修改的内容(字段类型、标记、自增的等)

如下图:将name字段修改为int(10)类型

 (2)修改字段的属性和字段名

   alter  table 表名  change  老字段  新字段 新属性  

    如下图:把name字段修改为names 并且修改为varchar(255)类型

 (3)修改字段顺序

   alter table 表名 modify 字段名  字段属性  位置

下图:把names字段放在第一个

下图:把字段names 放到id后面

4.数据的操作

 1)显示数据表字段(desc 表名;)

2)添加数据

(1)添加一条数据 insert into 表名 values('要添加的第一个字段的值','第二个字段的值'。。。依次类推)

如下图:添加一条数据names对应1111,id对应空(int类型转为0)

(2)依次插入多条数据

insert into 表名 (‘字段1’,‘字段2’)values (‘第一条数据的字段1的值’,‘第一条字段2的值’),(‘第二条数据的字段1的值’,‘第二条字段2的值’),。。。(‘最后一条数据的字段1的值’,‘最后一条字段2的值’);

如下图:

3)修改数据

update  表名 set 字段1=‘要修改为的值’,字段二=‘要修改的值’  要修改的条件(如果没有会把所有数据修改了慎用)

如下图:把id=1的数据的names值修改为111;

 4)删除数据

delete from 表名 要删除的数据的条件(如果没有会把整个表的数据全部删除,请谨慎操作)

如下图删除id=1的数据

5)查询数据

(1)select  ‘字段1’,‘字段2’。。。 from  表名 查询条件

select * from 表名 查询条件(*代表查询所有的字段)

如下图:查询id=2的数据 查询字段id和names

(2)查询是设置字段别名如下图:查询出来的id字段设置为了ids(多用于多表联查有重复字段的情况)

6)mysql 条件语句

(1)where条件 

      常用操作:=等于 ,<>、!=不等于,>大于,<小于,>=大于等于,<=小于等于

      例如:下图搜索id>0的数据

where的条件也可以用and(并且的意思)和or(或者的意思)连接

下图搜索id不等于2并且小于3的数据

下图是搜索id等于2或者id<1的数据

where条件的模糊查询(like语句)有下图3种形式,like ‘%要查询的字符%’意思是包含要查询的字符,like ‘%要查询的字符’以要查询的字符结尾的数据,like '要查询的字段%'以要查询的字段开头

范围查询如下图

为null或者不为null(is null或者is not null) 

(2)limit条件(用于条数限制和分页)

如下图限制查询1条数据

如下图limit 1,1 (从第二条开始查询,查询一条),从第一条开始查起始limit 0,1

(3)按照字段分组 group by 字段 desc(倒序) 或者asc(正序)

(4)having语法与where语句类似,但是也有不同

   where针对表中数据列发挥作用查询数据,having是对查询结果中的列发挥作用筛选数据,所以where的查询速度会比快,查询结果也不尽相同。

由于having是在查询结果中筛选,所以数据表中没有搜索的字段不能作为having的条件

如下图数据表中有names字段但是没查询,就报错了

如下图设置的别名字段可以作为having的条件,但是不可以作为where的条件

另外执行顺序是where>having,所以where条件和having是可以同时存在的,而且having对聚合函数有效。

(5)内连接、左连接、右连接、全连接

内连接 :select 查询字段 from 表1 inner join 表2 on 关联条件

查询根据关联条件的交集(默认是inner连接,inner可以省去)

左链接:select 查询字段 from 表1 left join 表2 on 关联条件

左链接表1的数据全部查询出来,表2查询关联的数据

右链接:select 查询字段 from 表1 right join 表2 on 关联条件

右链接表1的查询关联数据,表2查询所有的数据

全连接 select 表1查询的字段 from 表1 union(union all) select 表2查询的字段 from 表2

全连接是要把两个表的数据全部查出来,但是字段需要相同

(6)聚合函数(min(),avg(),count(),sum())等

mysql开发常用的一些命令做一下总结,方便自己查询,有什么错误的地方欢迎各位大神指出!!!

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值