MySql数据库命令操作详解

一、对数据库的操作

     1、创建一个库

          create database 库名      

          create database 库名 character set 编码    //创建带有编码的库

      2、删除一个库

          drop database 库名

      3、使用库

          use 库名

      4、查看当前正在操作的库

          select database();

      5、显示所有的数据库

          show databases;

      6、查看数据库编码

          show create database 库名;

二、对数据库表的操作

      1、创建一张表

           create table 表名(

                  字段名  类型(长度)  [约束],

                  字段名  类型(长度)  [约束],

                  字段名  类型(长度)  [约束]

           );

      2、查看数据库表

           show tables;

      3、查看表的结构

            desc 表名;

      4、删除一张表

            drop table 表名;

      5、修改表

             a、添加一列:

                    alter table 表名 add 字段名 类型(长度) [约束];

             b、修改列的类型(长度、约束)

                    alter table 表名 modify 要修改的字段名 类型(长度) [约束];

              c、修改列的列名

                    alter table 表名 change 旧列名 新列名 类型(长度) [约束];

              d、删除表的列

                    alter table 表名 drop 列名;

              e、修改表名

                    rename table 表名 to 新表名;

              f、修改表的字符集

                    alter table 表名 character set 编码;

              g、查看表的编码

                    show create table 表名;

三、对数据库表记录进行操作(修改)

      1、插入记录

           a、insert into 表名(列名1,列名2, 列名3...) values (值1,值2,值3...);

           b、insert into 表名 values(值1,值2,值3...);

           c、插入数据中文乱码问题解决办法

                 方式一:【不建议】

                         直接修改数据库安装目录里面的my.ini文件的第57行

                         default-character-set=utf8

                 方式二:

                         set names gbk;

      2、修改表的记录

           a、不带条件的(它会将该列的所有记录都更改)

                update 表名 set 字段名=值,字段名=值,字段名=值...;

           b、带条件的

                update 表名 set 字段名=值,字段名=值,字段名=值... where 条件;

      3、删除表的记录

           a、带条件的(删除后,id不会重置)

                delete from 表名 where 条件;

           b、不带条件的

                delete from 表名;

           c、delete 与truncate 的区别?

                delete 删除的时候是一条一条的删除记录,它配合事物,可以将删除的数据找回;

                truncate 删除,它是将整个表摧毁,然后再创建一张一模一样的表。它删除的数据无法找回。

               

                delete操作演示:

                               

     

                  Truncate操作演示:

                               

          

         注意:delete删除,id不会重置!而使用truncate操作,id会重置因为它删除了表结构,然后再创建一张一模一样的表,所以再次插入数据的数据的时候从1开始。


       4、查询操作

            select [distinct] * | 列名,列名 from 表名 [where 条件];

            a、查询所有

                 select * from 表名;

            b、查询特定字段名

                 select 列名,列名 from 表名;

            c、使用别名查询所有

                 select * from 表名 as 别名;

                 select * from 表名   别名;

            d、使用列别名查询表

                 select 列名 as 列别名 from 表名;

                 select 列名 列别名 from 表名;

            e、查询某列信息去掉重复值

                 select distinct(列名) from 表名;

            f、对整形数据的列进行加上特定值,并进行显示

                 select 列名+10 from 表名;

            g、按照特定顺序进行显示,如价格按照(升序、降序)显示

                 select * from 表名 order by price asc;

                 select * from 表名 order by price desc;

            h、显示某一字段包含特定字符串的数据

                 select * from 表名 where 列名 like ‘%特定字符串%’

            i、聚合函数

                (1)、获取所有的商品价格的总和

                            select sum(price) from 表名;

                 (2)、获取所有商品的平均价格

                            select avg(price) from 表名;

                 (3)、获取所有商品的个数

                            select count(*) from 表名;

            j、分组操作

                 (1)、根据某一字段分组,分组后统计每组个数

                           select 列名,count(*) from 表名 group by 列名; //一般这两个列名为同一列名

                 (2)、根据某一字段分组,分组统计每组商品的平均价格,并且平均价格大于20。

                           select 列名,avg(price) from 表名 gruop by 列名 having avg(price)>20;

            k、使用Limit关键字进行查询操作(查询第几页,每页显示数量)

                 select * from 表名 limit 6,3;

                 //查询第3页每页显示3条数据,其中参数一表示起始位置:要查询(第几页-1)乘以第二个参数),

                  即  (3-1)*3=6;

            l、查询总结

                 select          一般在它后面的内容都是要查询的字段

                 from            要查询的表

                 where         查询条件

                 group by     分组

                 having        分组后带有条件只能使用having

                 order by      排序,它必须放在最后面,

     






  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值