資料庫筆試題及答案
⑴ 資料庫方面的試題
http://www.zhrtvu.net/oldpage/departmentpage/lgb/foravit/zhuhaitvu/Exam.htm
不怎麼多,但還可以,自己也可以到上找些的啊...
⑵ 面試常問的資料庫問題及答案
目前在職場中很難找到非常合格的資料庫開發人員。有人說:「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參數之間的區別是什麼?>
⑶ 求sql資料庫考試題答案
1.create database Readbook
on
(name=Readbook_data,filename='D:\server\Readbook_data.mdf',size=2mb,maxsize=10mb,filegrowth=1mb)
log on
(
name=Readbook_log,
filename='D:\server\Readbook_log.ldf',size=1mb,maxsize=5mb,filegrowth=1mb
)
go
2.use mybase
go
alter database mybase
add log file
(
name=Readbook2_log,
filename='D:\server\mybase2_log.ldf',size=2mb,maxsize=10mb,filegrowth=1mb
)
go
3.alter database mybase
remove file Readbook2_log
⑷ sql資料庫考試題及答案怎麼寫
buttonRemove.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
IStructuredSelection selection = (IStructuredSelection)listViewer.getSelection();
Language language = (Language)selection.getFirstElement();
if(language == null) {
System.out.println("Please select a language first.");
return;
}
⑸ SQL資料庫考試試題,求高手解答
SQL SERVER 資料庫應用技術第二版(張浦生主編)課後習題答案,誰有急求!
瀏覽次數:29次懸賞分:0 | 離問題結束還有 12 小時 | 提問者:普羅旺斯987 | 檢舉
還能輸入 9999 字
插入圖片插入地圖
參考資料:匿名回答
提交回答
回答 共2條
自己做吧
追問
可是不會呢
回答
問我呀
追問
你會啊,告訴我吧,千恩萬謝
回答者: sytdeedee | 六級 | 2011-6-14 13:25 | 檢舉
凌吧!不給人積分就想要答案 啊
追問
你是誰啊
⑹ 資料庫試題
全國信息技術水平證書考試中的資料庫應用系統設計試題及答案在很多的網站上面是有的,但是有的是要收費才可以看到的,所以你要是沒有帳號的話是看不了的,
⑺ 有關資料庫的筆試題
確實,這個問題得用點時間。我先給你開個頭,有空給你補上:
問題一:(需要說明下表和欄位主鍵就OK了)
需要建三個表:具體欄位可以自己再加
程序員信息表、部門表、上級部門表
**************************************
CREATE TABLE [Programmer] (
[ProgrammerCode] [int] NOT NULL ,
[ProgrammerName] [char] (10) COLLATE Japanese_CI_AS NULL ,
[ProgrammerSex] [int] NOT NULL ,
[BelongBranch] [int] NOT NULL ,
[other] [char] (10) COLLATE Japanese_CI_AS NULL ,
CONSTRAINT [PK_Programmer] PRIMARY KEY CLUSTERED
(
[ProgrammerCode]
) ON [PRIMARY]
) ON [PRIMARY]
GO
*****************************************
CREATE TABLE [Branch] (
[BranchCode] [int] NOT NULL ,
[BranchName] [char] (10) COLLATE Japanese_CI_AS NOT NULL ,
[BelongTo] [int] NOT NULL ,
[OtherInformation] [char] (10) COLLATE Japanese_CI_AS NULL ,
CONSTRAINT [PK_Branch] PRIMARY KEY CLUSTERED
(
[BranchCode]
) ON [PRIMARY]
) ON [PRIMARY]
GO
***************************************
CREATE TABLE [LeaderBranch] (
[LeaderBranch] [int] NOT NULL ,
[LeaderBranchName] [char] (10) COLLATE Japanese_CI_AS NOT NULL ,
[OtherInformation] [char] (10) COLLATE Japanese_CI_AS NULL ,
CONSTRAINT [PK_LeaderBranch] PRIMARY KEY CLUSTERED
(
[LeaderBranch]
) ON [PRIMARY]
) ON [PRIMARY]
GO
******************************************************
問題2:
各部門人數查詢:
SELECT BranchName,count (*) AS 程序員人數
FROM Programmers p INNER JOIN Branch b ON p.BelongBranch = b.BranchCode
GROUP BY BranchName
上級部門人數查詢:
SELECT LeaderBranchName,count (*) AS 程序員人數
FROM Programmers p INNER JOIN Branch b ON p.BelongBranch = b.BranchCode
INNER JOIN LeaderBranch l ON b.BelongTo = l.LeaderBranch
GROUP BY l.LeaderBranchName
——————————————————————————————
問題三有空再給你答,呵呵~~