當前位置:首頁 » 編程語言 » sql復試

sql復試

發布時間: 2022-12-18 15:14:17

A. 資料庫的面試會問什麼樣的問題

目前在職場中很難找到非常合格的資料庫開發人員。有人說:「sql開發是一門語言,它很容易學,但是很難掌握。」
在面試應聘的sql Server資料庫開發人員時,我運用了一套標準的基準技術問題。下面這些問題是我覺得能夠真正有助於淘汰不合格應聘者的問題。它們按照從易到難的順序排列。當你問到關於主鍵和外鍵的問題時,後面的問題都十分有難度,因為答案可能會更難解釋和說明,尤其是在面試的情形下。
你能向我簡要敘述一下sql Server 2000中使用的一些資料庫對象嗎?
你希望聽到的答案包括這樣一些對象:表格、視圖、用戶定義的函數,以及存儲過程;如果他們還能夠提到像觸發器這樣的對象就更好了。如果應聘者不能回答這個基本的問題,那麼這不是一個好兆頭。
null是什麼意思?
null(空)這個值是資料庫世界裡一個非常難纏的東西,所以有不少應聘者會在這個問題上跌跟頭您也不要覺得意外。
null這個值表示unknown(未知):它不表示「」(空字元串)。假設您的sql Server資料庫里有ANSI_nullS,當然在默認情況下會有,對null這個值的任何比較都會生產一個null值。您不能把任何值與一個 unknown值進行比較,並在邏輯上希望獲得一個答案。您必須使用IS null操作符。

什麼是索引?sql Server 2000里有什麼類型的索引?
任何有經驗的資料庫開發人員都應該能夠很輕易地回答這個問題。一些經驗不太多的開發人員能夠回答這個問題,但是有些地方會說不清楚。
簡單地說,索引是一個數據結構,用來快速訪問資料庫表格或者視圖里的數據。在sql Server里,它們有兩種形式:聚集索引和非聚集索引。聚集索引在索引的葉級保存數據。這意味著不論聚集索引里有表格的哪個(或哪些)欄位,這些欄位都會按順序被保存在表格。由於存在這種排序,所以每個表格只會有一個聚集索引。非聚集索引在索引的葉級有一個行標識符。這個行標識符是一個指向磁碟上數據的指針。它允許每個表格有多個非聚集索引。
什麼是主鍵?什麼是外鍵?
主鍵是表格里的(一個或多個)欄位,只用來定義表格里的行;主鍵里的值總是唯一的。外鍵是一個用來建立兩個表格之間關系的約束。這種關系一般都涉及一個表格里的主鍵欄位與另外一個表格(盡管可能是同一個表格)里的一系列相連的欄位。那麼這些相連的欄位就是外鍵。
什麼是觸發器?sql Server 2000有什麼不同類型的觸發器?
讓未來的資料庫開發人員知道可用的觸發器類型以及如何實現它們是非常有益的

觸發器是一種專用類型的存儲過程,它被捆綁到sql Server 2000的表格或者視圖上。在sql Server 2000里,有INSTEAD-OF和after兩種觸發器。INSTEAD-OF觸發器是替代數據操控語言(Data Manipulation Language,dml)語句對表格執行語句的存儲過程。例如,如果我有一個用於TableA的INSTEAD-OF-UPDATE觸發器,同時對這個表格執行一個更新語句,那麼INSTEAD-OF-UPDATE觸發器里的代碼會執行,而不是我執行的更新語句則不會執行操作。
after觸發器要在dml語句在資料庫里使用之後才執行。這些類型的觸發器對於監視發生在資料庫表格里的數據變化十分好用。
您如何確一個帶有名為Fld1欄位的TableB表格里只具有Fld1欄位里的那些值,而這些值同時在名為TableA的表格的Fld1欄位里?
這個與關系相關的問題有兩個可能的答案。第一個答案(而且是您希望聽到的答案)是使用外鍵限制。外鍵限制用來維護引用的完整性。它被用來確保表格里的欄位只保存有已經在不同的(或者相同的)表格里的另一個欄位里定義了的值。這個欄位就是候選鍵(通常是另外一個表格的主鍵)。
另外一種答案是觸發器。觸發器可以被用來保證以另外一種方式實現與限制相同的作用,但是它非常難設置與維護,而且性能一般都很糟糕。由於這個原因,微軟建議開發人員使用外鍵限制而不是觸發器來維護引用的完整性。
對一個投入使用的在線事務處理表格有過多索引需要有什麼樣的性能考慮?
你正在尋找進行與數據操控有關的應聘人員。對一個表格的索引越多,資料庫引擎用來更新、插入或者刪除數據所需要的時間就越多,因為在數據操控發生的時候索引也必須要維護。
你可以用什麼來確保表格里的欄位只接受特定范圍里的值?
這個問題可以用多種方式來回答,但是只有一個答案是「好」答案。您希望聽到的回答是Check限制,它在資料庫表格里被定義,用來限制輸入該列的值。
觸發器也可以被用來限制資料庫表格里的欄位能夠接受的值,但是這種辦法要求觸發器在表格里被定義,這可能會在某些情況下影響到性能。因此,微軟建議使用Check限制而不是其他的方式來限制域的完整性。
<b?返回參數和output參數之間的區別是什麼?>如果應聘者能夠正確地回答這個問題,那麼他的機會就非常大了,因為這表明他們具有使用存儲過程的經驗。
返回參數總是由存儲過程返回,它用來表示存儲過程是成功還是失敗。返回參數總是int數據類型。
OUTPUT參數明確要求由開發人員來指定,它可以返回其他類型的數據,例如字元型和數值型的值。(可以用作輸出參數的數據類型是有一些限制的。)您可以在一個存儲過程里使用多個OUTPUT參數,而您只能夠使用一個返回參數。
什麼是相關子查詢?如何使用這些查詢?
經驗更加豐富的開發人員將能夠准確地描述這種類型的查詢。
相關子查詢是一種包含子查詢的特殊類型的查詢。查詢里包含的子查詢會真正請求外部查詢的值,從而形成一個類似於循環的狀況。</b?返回參數和output參數之間的區別是什麼?>

B. 萬得資訊數據處理員的復試,主要是什麼樣的流程、會問什麼

復試一般都是管理層的直接對你面試。談的大概是薪酬、以及你對自己將來職業生涯的規劃等等一些問題,再有,不了解你那個公司大不大。一般公司不大的話復試不會特別嚴格,自由發揮就好,大公司更要講究應變了,對著他笑絕對有用,一下是資料庫管理員的職責。供參考

資料庫管理員的職責:

一、 一般監視
1. 監控資料庫的警告日誌。Alert<sid>.log,定期做備份刪除。
2. Linstener.log的監控,/network/admin/linstener.ora。
3. 重做日誌狀態監視,留意視圖v$log,v$logfile,該兩個視圖存儲重做日誌的信息。
4. 監控資料庫的日常會話情況。
5. 碎片、剩餘表空間監控,及時了解表空間的擴展情況、以及剩餘空間分布情況,如果有連續的自由空間,手工合並。
6. 監控回滾段的使用情況。生產系統中,要做比較大的維護和資料庫結構更改時,用rbs_big01來做。
7. 監控擴展段是否存在不滿足擴展的表。
8. 監控臨時表空間。
9. 監視對象的修改。定期列出所有變化的對象。
10. 跟蹤文件,有初始化參數文件、用戶後台文件、系統後台文件

二、 對資料庫的備份監控和管理
資料庫的備份至關重要,對資料庫的備份策略要根據實際要求進行更改,數據的日常備份情況進行監控。由於我們使用了磁帶庫,所以要對legato備份軟體進行監控,同時也要對rman備份資料庫進行監控。

三、 規范資料庫用戶的管理
定期對管理員等重要用戶密碼進行修改。對於每一個項目,應該建立一個用戶。DBA應該和相應的項目管理人員或者是程序員溝通,確定怎樣建立相應的資料庫底層模型,最後由DBA統一管理,建立和維護。任何資料庫對象的更改,應該由DBA根據需求來操作。

四、 對SQL語句的書寫規范的要求
一個SQL語句,如果寫得不理想,對資料庫的影響是很大的。所以,每一個程序員或相應的工作人員在寫相應的SQL語句時,應該嚴格按照《SQL書寫規范》一文。最後要有DBA檢查才可以正式運行。

五、 DBA深層次要求
一個資料庫能否健康有效的運行,僅靠這些日常的維護還是不夠的,還應該致力於資料庫的更深一層次的管理和研究:資料庫本身的優化,開發上的性能優化;項目的合理化;安全化審計方面的工作;資料庫的底層建模研究、規劃設計;各種數據類型的處理;內部機制的研究;ora-600錯誤的研究、故障排除,等等很多值得探討的問題。

熱點內容
cgipython配置 發布:2024-05-20 09:29:06 瀏覽:865
在我的世界伺服器中隱身 發布:2024-05-20 09:07:46 瀏覽:972
加西貝拉壓縮機好嗎 發布:2024-05-20 08:58:56 瀏覽:757
eve腳本航 發布:2024-05-20 08:56:59 瀏覽:591
取票人的密碼是什麼 發布:2024-05-20 08:21:43 瀏覽:963
天貓帳號密碼應輸入什麼 發布:2024-05-20 08:16:26 瀏覽:272
plsql異常處理 發布:2024-05-20 07:54:47 瀏覽:542
dreamweaver上傳網頁 發布:2024-05-20 07:51:24 瀏覽:462
拍攝車的分鏡頭腳本 發布:2024-05-20 07:50:15 瀏覽:137
mg名爵最高配置是哪個 發布:2024-05-20 07:45:11 瀏覽:376