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      排序,它必須放在最後面,

     






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章