溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Mysql中有哪些常用技能

發(fā)布時間:2020-05-08 13:44:00 來源:億速云 閱讀:201 作者:三月 欄目:MySQL數(shù)據(jù)庫

本文主要給大家簡單講講Mysql中有哪些常用技能,相關專業(yè)術語大家可以上網(wǎng)查查或者找一些相關書籍補充一下,這里就不涉獵了,我們就直奔主題吧,希望Mysql中有哪些常用技能這篇文章可以給大家?guī)硪恍嶋H幫助。                                                    

1、DML、DDL、DCL

1).DML(Dada Manipulation Language) 數(shù)據(jù)操縱語言(CRUD)
    A).新增
        a).單行插入 insert into A(a,b,c)values(a,b,c);
        b).多行插入 insert into A(a,b,c)values(a1,b1,c1),(a2,b2,c2);
    B).更新 
        a).set單字段 update A set a = 1 where c = 3;
        b).set多字段 update A set a = 1 ,b = 2 where c = 2;
    C).查詢
        a).注意where條件 select a,b,c from A;
    D).刪除
        a).注意where條件 delete from A where c = 3;
2).DDL(Dada Definition Language) 數(shù)據(jù)庫定義語言
    A).CREATE
        a).創(chuàng)建表
            create table A(
                 a int(10),
                 b tinyint(4),
                 c tinyint(4),
                 d char(10),
                 ...
            );
    B).ALERT 
        a).新增字段 alter table A add tag int;
        b).修改字段 alter table A modify COLUMN tag char(20);
        c).刪除字段 alter table A drop COLUMN tag;
    C).DROP
        a).刪除表 drop table A;
        b).刪除庫 drop database Demo;
 3).DCL(Dada Control Language) 數(shù)據(jù)庫控制語言
     A).grant 授權
         a).grant 權限 on 數(shù)據(jù)庫對象 to 用戶 
     B).deny 拒絕授權
         DENY 權限 TO 用戶 
     C).revoke 撤銷授權
         a).revoke 權限 on 數(shù)據(jù)庫對象 from 用戶 
 4).其他
     A).查看表結構
         a).desc A; 
         b).describe A; 
         c).show columns from A; 
     B).清空表數(shù)據(jù)
         a).truncate table A;

2、SQL語句分析

 1).EXPLAIN、DESC語句---關鍵信息解釋
     A).Type(system > const > eq_ref > ref > fulltext > ref_or_null > index_merge > unique_subquery > index_subquery > range > index > ALL)
     B).Possible_keys(NULL,則沒有相關的索引。在這種情況下,可以通過檢查WHERE子句看是否它引用某些列或適合索引的列來提高你的查詢性能)
     C).Key(MySQL實際決定使用的鍵(索引))
     D).Key_len(索引中使用的字節(jié)數(shù),不損失精確性的情況下,長度越短越好)
     E).Ref(連接匹配條件,即哪些列或常量被用于查找索引列上的值)
     F).Rows(MySQL根據(jù)表統(tǒng)計信息及索引選用情況,估算的找到所需的記錄所需要讀取的行數(shù))
     G).Extra(MySQL解決查詢的詳細信息)
 2).SHOW PROCESSLIST 分析

3、Mysql通過job任務調度(event)執(zhí)行存儲過程

1).事件(EVENT) 調用 函數(shù)(f(x))(存儲過程)
    a).事件 
        Call proc_detail();
    b).存儲過程 
        CREATE PROCEDURE proc_detail()
        BEGIN
            DECLARE  id1  bigint(20);
            DECLARE  openid1  varchar(100); 
             DECLARE  unionid1  varchar(100); 
            -- 遍歷數(shù)據(jù)結束標志
            DECLARE done INT DEFAULT FALSE;
            -- 游標
            DECLARE cur_account CURSOR FOR select id,openid,unionid from m_users where phone_bind =1 ;
            -- 將結束標志綁定到游標
            DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
            -- 打開游標
            OPEN  cur_account;     
            -- 遍歷
            read_loop: LOOP
                    -- 取值 取多個字段
                    FETCH  NEXT from cur_account INTO id1,openid1,unionid1;
                    IF done THEN
                        LEAVE read_loop;
                     END IF;
         
                -- 你自己想做的操作
                            insert into m_users_details(uid,openid,unionid,style) VALUES(id1,openid1,unionid1,1); 
            END LOOP;
            CLOSE cur_account;
        END

Mysql中有哪些常用技能就先給大家講到這里,對于其它相關問題大家想要了解的可以持續(xù)關注我們的行業(yè)資訊。我們的板塊內容每天都會捕捉一些行業(yè)新聞及專業(yè)知識分享給大家的。


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI