1.觸發器的作用?
答:觸發器是一中特殊的預存程序,主要是通過事件來觸發而被執行的。它可以強化約束,來維護資料的完整性和一致性,可以追蹤資料庫內的操作從而不允許未經許可的更新和變化。可以聯級運算。如,某表上的觸發器上包含對另一個表的資料操作,而該操作又會導致該表觸發器被觸發。
2。什麼是預存程序?用什麼來調用?
答:預存程序是一個先行編譯的SQL語句,優點是允許模組化的設計,就是說只需建立一次,以後在該程式中就可以調用多次。如果某次操作需要執行多次SQL,使用預存程序比單純SQL語句執行要快。可以用一個命令對象來調用預存程序。
3。索引的作用?和它的優點缺點是什嗎?
答:索引就一種特殊的查詢表,資料庫的搜尋引擎可以利用它加速對資料的檢索。它很類似與現實生活中書的目錄,不需要查詢整本書內容就可以找到想要的資料。索引可以是唯一的,建立索引允許指定單個列或者是多個列。缺點是它減慢了資料錄入的速度,同時也增加了資料庫的尺寸大小。
4。什麼是記憶體流失?
答:一般我們所說的記憶體流失指的是堆記憶體的泄漏。堆記憶體是程式從堆中為其分配的,大小任意的,使用完後要顯示釋放記憶體。當應用程式用關鍵字new等建立對象時,就從堆中為它分配一塊記憶體,使用完後程式調用free或者delete釋放該記憶體,否則就說該記憶體就不能被使用,我們就說該記憶體被泄漏了。
5。什麼是事務?什麼是鎖?
答:事務就是被綁定在一起作為一個邏輯工作單元的SQL語句分組,如果任何一個語句操作失敗那麼整個操作就被失敗,以後操作就會復原到操作前狀態,或者是上有個節點。為了確保要麼執行,要麼不執行,就可以使用事務。要將有組語句作為事務考慮,就需要通過ACID測試,即原子性,一致性,隔離性和持久性。
鎖:在所以的DBMS中,鎖是實現事務的關鍵,鎖可以保證事務的完整性和並發性。與現實生活中鎖一樣,它可以使某些資料的擁有者,在某段時間內不能使用某些資料或資料結構。當然鎖還分層級的。
6。什麼叫視圖?遊標是什嗎?
答:視圖是一種虛擬表,具有和物理表相同的功能。可以對視圖進行增,改,查,操作,試圖通常是有一個表或者多個表的行或列的子集。對視圖的修改不影響基本表。它使得我們擷取資料更容易,相比多表查詢。
遊標:是對查詢出來的結果集作為一個單元來有效處理。遊標可以定在該單元中的特定行,從結果集的當前行檢索一行或多行。可以對結果集當前行做修改。一般不使用遊標,但是需要逐條處理資料的時候,遊標顯得十分重要。