1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        10道經(jīng)典MySQL面試題

        共 2768字,需瀏覽 6分鐘

         ·

        2021-05-16 12:16

        1.drop,delete與truncate的區(qū)別

        相同點:

        truncate和不帶where子句的delete,以及drop都會刪除表內(nèi)的數(shù)據(jù)

        不同點:

        • truncate會清除表數(shù)據(jù)并重置id從1開始,delete就只刪除記錄,drop可以用來刪除表或數(shù)據(jù)庫并且將表所占用的空間全部釋放
        • truncate和delete只刪除數(shù)據(jù)不刪除表的結(jié)構(gòu)。drop語句將刪除表的結(jié)構(gòu)被依賴的約(constrain),觸發(fā)器(trigger),依賴于該表的存儲過程/函數(shù)將保留,但是變?yōu)?invalid 狀態(tài)。
        • 速度上一般來說: drop> truncate > delete
        • 使用上,想刪除部分數(shù)據(jù)行用 delete,想刪除表用 drop,想保留表而將所有數(shù)據(jù)刪除,如果和事務(wù)無關(guān),用truncate即可。如果和事務(wù)有關(guān),或者想觸發(fā)trigger,還是用delete。
        • delete是DML語句,不會自動提交。drop/truncate都是DDL語句,執(zhí)行后會自動提交。

        2.mysql里記錄貨幣用什么字段類型好

        NUMERIC 和DECIMAL 類型被MySQL實現(xiàn)為同樣的類型,這在SQL92標(biāo)準(zhǔn)允許。他們被用于保存值,該值的準(zhǔn)確精度是極其重要的值,例如與金錢有關(guān)的數(shù)據(jù)。

        DECIMAL和NUMERIC值作為字符串存儲,而不是作為二進制浮點數(shù),以便保存那些值的小數(shù)精度。

        3.MySQL中myisam與innodb的區(qū)別

        • InnoDB支持事務(wù),而MyISAM不支持事務(wù)
        • InnoDB支持行級鎖,而MyISAM支持表級鎖
        • InnoDB支持MVCC, 而MyISAM不支持
        • InnoDB支持外鍵,而MyISAM不支持
        • InnoDB不支持全文索引,而MyISAM支持。
        • InnoDB不能通過直接拷貝表文件的方法拷貝表到另外一臺機器, myisam 支持
        • InnoDB表支持多種行格式, myisam 不支持
        • InnoDB是索引組織表, myisam 是堆表

        4.事務(wù)的四個特性及含義

        數(shù)據(jù)庫事務(wù)transanction正確執(zhí)行的四個基本要素:ACID,原子性(Atomicity)、一致性(Correspondence)、隔離性(Isolation)、持久性(Durability)。

        原子性: 整個事務(wù)中的所有操作,要么全部完成,要么全部不完成,不可能停滯在中間某個環(huán)節(jié)。事務(wù)在執(zhí)行過程中發(fā)生錯誤,會被回滾(Rollback)到事務(wù)開始前的狀態(tài),就像這個事務(wù)從來沒有執(zhí)行過一樣。

        一致性: 在事務(wù)開始之前和事務(wù)結(jié)束以后,數(shù)據(jù)庫的完整性約束沒有被破壞。

        隔離性: 隔離狀態(tài)執(zhí)行事務(wù),使它們好像是系統(tǒng)在給定時間內(nèi)執(zhí)行的唯一操作。如果有兩個事務(wù),運行在相同的時間內(nèi),執(zhí)行 相同的功能,事務(wù)的隔離性將確保每一事務(wù)在系統(tǒng)中認為只有該事務(wù)在使用系統(tǒng)。這種屬性有時稱為串行化,為了防止事務(wù)操作間的混淆,必須串行化或序列化請 求,使得在同一時間僅有一個請求用于同一數(shù)據(jù)。

        持久性: 在事務(wù)完成以后,該事務(wù)所對數(shù)據(jù)庫所作的更改便持久的保存在數(shù)據(jù)庫之中,并不會被回滾。

        5.MYSQL相比于其他數(shù)據(jù)庫有哪些特點?

        MySQL是一個小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典MySQL AB公司,現(xiàn)在已經(jīng)被Sun公司收購,支持FreeBSD、Linux、MAC、Windows等多種操作系統(tǒng)與其他的大型數(shù)據(jù)庫例如Oracle、DB2、SQL Server等相比功能稍弱一些。其特點有:

        • 可以處理擁有上千萬條記錄的大型數(shù)據(jù);
        • 支持常見的SQL語句規(guī)范;
        • 可移植行高,安裝簡單小巧;
        • 良好的運行效率,有豐富信息的網(wǎng)絡(luò)支持;
        • 調(diào)試、管理,優(yōu)化簡單(相對其他大型數(shù)據(jù)庫)。

        6.視圖的作用,視圖可以更改么?

        視圖是虛擬的表,與包含數(shù)據(jù)的表不一樣,視圖只包含使用時動態(tài)檢索數(shù)據(jù)的查詢;不包含任何列或數(shù)據(jù)。使用視圖可以簡化復(fù)雜的sql操作,隱藏具體的細節(jié),保護數(shù)據(jù);視圖創(chuàng)建后,可以使用與表相同的方式利用它們。

        視圖不能被索引,也不能有關(guān)聯(lián)的觸發(fā)器或默認值,如果視圖本身內(nèi)有order by 則對視圖再次order by將被覆蓋。

        7.存儲過程與觸發(fā)器的區(qū)別

        觸發(fā)器與存儲過程非常相似,觸發(fā)器也是SQL語句集,兩者唯一的區(qū)別是觸發(fā)器不能用EXECUTE語句調(diào)用,而是在用戶執(zhí)行Transact-SQL語句時自動觸發(fā)(激活)執(zhí)行。

        觸發(fā)器是在一個修改了指定表中的數(shù)據(jù)時執(zhí)行的存儲過程。通常通過創(chuàng)建觸發(fā)器來強制實現(xiàn)不同表中的邏輯相關(guān)數(shù)據(jù)的引用完整性和一致性。由于用戶不能繞過觸發(fā)器,所以可以用它來強制實施復(fù)雜的業(yè)務(wù)規(guī)則,以確保數(shù)據(jù)的完整性。

        觸發(fā)器不同于存儲過程,觸發(fā)器主要是通過事件執(zhí)行觸發(fā)而被執(zhí)行的,而存儲過程可以通過存儲過程名稱名字而直接調(diào)用。當(dāng)對某一表進行諸如UPDATE、INSERT、DELETE這些操作時,SQLSERVER就會自動執(zhí)行觸發(fā)器所定義的SQL語句,從而確保對數(shù)據(jù)的處理必須符合這些SQL語句所定義的規(guī)則。

        8.索引的作用?和它的優(yōu)點缺點是什么?

        索引就是一種特殊的查詢表,數(shù)據(jù)庫的搜索引擎可以利用它加速對數(shù)據(jù)的檢索。它很類似與現(xiàn)實生活中書的目錄,不需要查詢整本書內(nèi)容就可以找到想要的數(shù)據(jù)。

        索引可以是唯一的,創(chuàng)建索引允許指定單個列或者是多個列。缺點是它減慢了數(shù)據(jù)錄入的速度,同時也增加了數(shù)據(jù)庫的尺寸大小。

        9.union 與union all的區(qū)別

        union 在進行表連接后會篩選掉重復(fù)的記錄,所以在表連接后會對所產(chǎn)生的結(jié)果集進行排序運算,刪除重復(fù)的記錄再返回結(jié)果。union all 則會顯示重復(fù)結(jié)果,只是簡單的兩個結(jié)果合并并返回.所以效率比union高,在保證沒有重復(fù)數(shù)據(jù)的情況下用union all.

        10. SQL語言包括哪幾部分?每部分都有哪些操作關(guān)鍵字?

        SQL語言包括數(shù)據(jù)定義(DDL)、數(shù)據(jù)操縱(DML),數(shù)據(jù)控制(DCL)和數(shù)據(jù)查詢(DQL)四個部分。

        • 數(shù)據(jù)定義:Create Table,Alter Table,Drop Table, Craete/Drop Index等
        • 數(shù)據(jù)操縱:Select ,insert,update,delete,
        • 數(shù)據(jù)控制:grant,revoke
        • 數(shù)據(jù)查詢:select


        來源:blog.csdn.net/Black1499/article/details/84945702


        最近給大家找了  JVM學(xué)習(xí)視頻

        資源,怎么領(lǐng)???


        掃二維碼,加我微信,回復(fù):JVM

         注意,不要亂回復(fù) 

        沒錯,不是機器人
        記得一定要等待,等待才有好東西




        瀏覽 52
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            中文无码网 | 欧美激情在线狂野欧美精品 | chinese麻豆videostube | 久热中文影视欧美 | 欧美性爱一级视频 | 久热最新视频 | 先锋影音男人站 | 91人妻人人澡人人爽人人 | 91久久久久久久久久 | 午夜写真片福利电影网 |