黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

面試題首頁 > 數(shù)據(jù)庫面試題

數(shù)據(jù)庫事務(wù)面試題

001事務(wù)的概念?

事務(wù)是邏輯上的一組操作,要么都執(zhí)行,要么都不執(zhí)行。事務(wù)最經(jīng)典的例子就是轉(zhuǎn)賬了。假如小明要給小紅轉(zhuǎn)賬1000元,這個轉(zhuǎn)賬會涉及到兩個關(guān)鍵操作就是:將小明的余額減少1000元,將小紅的余額增加1000元。萬一在這兩個操作之間突然出現(xiàn)錯誤比如銀行系統(tǒng)崩潰,導(dǎo)致小明余額減少而小紅的余額沒有增加,這樣就不對了。事務(wù)就是保證這兩個關(guān)鍵操作要么都成功,要么都要失敗。

002事務(wù)的特征?

數(shù)據(jù)庫事務(wù)transanction正確執(zhí)行的四個基本要素。ACID,原子性(Atomicity)、一致性(Correspondence)、隔離性(Isolation)、持久性(Durability)。
● 原子性:事務(wù)是最小的執(zhí)行單位,不允許分割。整個事務(wù)中的所有操作,要么全部完成,要么全部不完成,不可能停滯在中間某個環(huán)節(jié)。
● 一致性:在事務(wù)開始之前和事務(wù)結(jié)束以后,數(shù)據(jù)庫的完整性沒有被破壞。
● 隔離性:并發(fā)訪問數(shù)據(jù)庫時,一個用戶的事務(wù)不被其他事務(wù)所干擾,各并發(fā)事務(wù)之間數(shù)據(jù)庫是獨立的;
● 持久性:在事務(wù)完成以后,該事務(wù)對數(shù)據(jù)庫中數(shù)據(jù)的改變是持久的。即使數(shù)據(jù)庫發(fā)生故障也不應(yīng)該對其有任何影響。

003事務(wù)的隔離級別?

數(shù)據(jù)庫的隔離級別越高,并發(fā)性就越差,性能就越低。
oracle的隔離級別默認(rèn)是READ COMMITED
mysql的隔離級別默認(rèn)是REPEATABLE READ,mysql下的事務(wù)默認(rèn)是自動提交的。

讀未提交:事務(wù)A在事務(wù)B未提交前讀取數(shù)據(jù),如果事務(wù)B撤銷了修改,那么A會讀取到臟數(shù)據(jù)。因為事務(wù)B提交前的數(shù)據(jù)在緩存中
讀已提交:事務(wù)A分別在事務(wù)B提交前和提交后讀取數(shù)據(jù),出現(xiàn)不可重復(fù)讀。因為事務(wù)B提交前的數(shù)據(jù)在緩存,事務(wù)B提交后的數(shù)據(jù)在硬盤,而事務(wù)A一直讀取的都是硬盤的數(shù)據(jù)從而導(dǎo)致不能夠重復(fù)讀的問題。
可重復(fù)讀:事務(wù)A在事務(wù)B添加一條數(shù)據(jù)提交后,事務(wù)A讀取記錄數(shù)的時候不一致出現(xiàn)幻讀。不可重復(fù)讀的重點在于Update和Delete,而幻讀在于Insert。

004并發(fā)事務(wù)帶來的問題?

在典型的應(yīng)用程序中,如果多個事務(wù)并發(fā)運行可能會導(dǎo)致以下的問題。

在不同的隔離級別下,V值分別如下:

  讀未提交  讀已提交  可重復(fù)讀  串行化
V1 2 1 1 1
V2 2 2 1 1
V3 2 2 2 2

與標(biāo)準(zhǔn)的SQL隔離級別不同的是,InnoDB在可重復(fù)讀級別下,利用Next-Key Lock解決了幻讀問題,能夠完全保證事務(wù)的隔離性,達(dá)到了串行化級別。

005索引的優(yōu)缺點,什么時候使用索引,什么時候不能使用索引

索引最大的好處是提高查詢速度, 
缺點是更新數(shù)據(jù)時效率低,因為要同時更新索引 
對數(shù)據(jù)進(jìn)行頻繁查詢進(jìn)建立索引,如果要頻繁更改數(shù)據(jù)不建議使用索引。

006簡述什么是聚簇索引與非聚簇索引?

聚簇索引:將數(shù)據(jù)存儲與索引放到了一塊,找到索引也就找到了數(shù)據(jù)。
非聚簇索引:將數(shù)據(jù)存儲于索引分開結(jié)構(gòu),索引結(jié)構(gòu)的葉子節(jié)點指向了數(shù)據(jù)的對應(yīng)行,MyISAM通過key_buffer把索引先緩存到內(nèi)存中,當(dāng)需要訪問數(shù)據(jù)時(通過索引訪問數(shù)據(jù)),在內(nèi)存中直接搜索索引,然后通過索引找到磁盤相應(yīng)數(shù)據(jù),這也就是為什么索引不在key buffer命中時,速度慢的原因。

007主鍵索引是聚集索引還是非聚集索引?

1.聚集索引決定了數(shù)據(jù)庫的物理存儲結(jié)構(gòu),而主鍵只是確定表格邏輯組織方式。這兩者不可混淆!
2.在InnoDB下主鍵索引是聚集索引,在MyISAM下主鍵索引是非聚集索引。

008存儲過程和函數(shù)的區(qū)別?

存儲過程是用戶定義的一系列sql語句的集合,涉及特定表或其它對象的任務(wù),用戶可以調(diào)用存儲過程,而函數(shù)通常是數(shù)據(jù)庫已定義的方法,它接收參數(shù)并返回某種類型的值并且不涉及特定用戶表。

009什么是存儲過程?有哪些優(yōu)缺點?

存儲過程,就是一些編譯好了的SQL語句,這些SQL語句代碼像一個方法一樣實現(xiàn)一些功能(對單表或多表的增刪改查),然后給這些代碼塊取一個名字,在用到這個功能的時候調(diào)用即可。
優(yōu)點:存儲過程是一個預(yù)編譯的代碼塊,執(zhí)行效率比較高;存儲過程在服務(wù)器端運行,減少客戶端的壓力;允許模塊化程序設(shè)計,只需要創(chuàng)建一次過程,以后在程序中就可以調(diào)用該過程任意次,類似方法的復(fù)用;一個存儲過程替代大量T_SQL語句 ,可以降低網(wǎng)絡(luò)通信量,提高通信速率;可以一定程度上確保數(shù)據(jù)安全。
缺點:調(diào)試麻煩、可移植性不靈活、重新編譯問題.

010什么是觸發(fā)器?觸發(fā)器的使用場景有哪些?

1)觸發(fā)器,指一段代碼,當(dāng)觸發(fā)某個事件時,自動執(zhí)行這些代碼。
2)使用場景:可以通過數(shù)據(jù)庫中的相關(guān)表實現(xiàn)級聯(lián)更改;實時監(jiān)控某張表中的某個字段的更改而需要做出相應(yīng)的處理。

011什么叫視圖?

視圖是一種虛擬的表,具有和物理表相同的功能。可以對視圖進(jìn)行增,改,查,操作,視圖通常是有一個表或者多個表的行或列的子集。對視圖的修改不影響基本表。它使得我們獲取數(shù)據(jù)更容易,相比多表查詢。

012什么是游標(biāo)?

游標(biāo):是對查詢出來的結(jié)果集作為一個單元來有效的處理。游標(biāo)可以定在該單元中的特定行,從結(jié)果集的當(dāng)前行檢索一行或多行??梢詫Y(jié)果集當(dāng)前行做修改。一般不使用游標(biāo),但是需要逐條處理數(shù)據(jù)的時候,游標(biāo)顯得十分重要。

013視圖的作用?以及視圖可以更新數(shù)據(jù)嗎?

1)使用視圖可以簡化復(fù)雜的sql操作,隱藏具體的細(xì)節(jié),保護(hù)數(shù)據(jù);
2)視圖不能被索引,也不能有關(guān)聯(lián)的觸發(fā)器或默認(rèn)值,如果視圖本身內(nèi)有order by則對視圖再次order by將被覆蓋。對于某些視圖,例如,未使用聯(lián)結(jié)子查詢分組聚集函數(shù)Distinct Union等,是可以對其更新的,對視圖的更新將對基表進(jìn)行更新;但是視圖主要用于簡化檢索,保護(hù)數(shù)據(jù),并不用于更新,而且大部分視圖都不可以更新。

014什么是數(shù)據(jù)庫連接池?為什么需要數(shù)據(jù)庫連接池呢?

數(shù)據(jù)庫連接是一種關(guān)鍵的有限的昂貴的資源,對數(shù)據(jù)庫連接的管理能顯著影響到整個應(yīng)用程序的伸縮性和健壯性,影響到程序 的性能指標(biāo)。數(shù)據(jù)庫連接池正是針對這個問題提出來的。
數(shù)據(jù)庫連接池負(fù)責(zé)分配、管理和釋放數(shù)據(jù)庫連接,它允許應(yīng)用程序重復(fù)使用一個現(xiàn)有的數(shù)據(jù)庫連接,而不是重新建立一個;釋放空閑時間超過最大空閑時間的數(shù)據(jù)庫連接來避免因為沒有釋放數(shù)據(jù)庫連接而引起的數(shù)據(jù)庫連接遺漏。這項技術(shù)能明顯提高對數(shù)據(jù)庫操作的性能。
數(shù)據(jù)庫連接池在初始化時將創(chuàng)建一定數(shù)量的數(shù)據(jù)庫連接放到連接池中,這些數(shù)據(jù)庫連接的數(shù)量是由最小數(shù)據(jù)庫連接數(shù)來設(shè)定的。無論這些數(shù)據(jù)庫連接是否被使用,連接池都將一直保證至少擁有這么多的連接數(shù)量。連接池的最大數(shù)據(jù)庫連接數(shù)量限定了 這個連接池能占有的最大連接數(shù),當(dāng)應(yīng)用程序向連接池請求的連接數(shù)超過最大連接數(shù)量時,這些請求將被加入到等待隊列中。

目錄

返回頂部
主站蜘蛛池模板: 三级黄色高清视频 | 最近中文字幕 | 色综合五月激情综合色一区 | 国产日产亚洲欧美综合另类 | 日韩免费一级毛片 | 成人国产亚洲 | 成人网视频| 日本韩国欧美在线 | 男女羞羞的视频网站在线观看 | 最近的中文字幕2019更新 | 国产成人福利免费观看 | 2017天天操| 最近中文字幕在线看免费视频 | 欧美激情在线观看一区二区三区 | 黄色的视频免费看 | 污视频在线免费 | 天天天天做夜夜夜做 | 国产欧美一区二区 | 色综合97天天综合网 | 国产黄三级三·级三级 | 毛片的网址| 黄色视频一级毛片 | 国内精品小视频福利网址 | 国产精品亚洲欧美 | 国产成+人+综合+亚洲 欧美 | 欧美精品专区免费观看 | 欧美成人久久久免费播放 | 日韩在线视频免费不卡一区 | 国产成人精品一区 | 黄黄视频在线观看 | 91社区在线观看精品 | 男男羞羞视频网站免费 | 成人在线视频免费 | 国产黄色免费看 | 一区二区国产在线播放 | 日本免费一区二区视频 | 18男女很黄的视频 | 最近免费的中文字幕一 | 亚洲视频在线一区二区 | 日韩小视频在线播放 | 国产视频一区二区在线观看 |