Ⅰ sql2005復習簡答題求解
1).結構化查詢語言(Structured Query Language)簡稱SQL,結構化查詢語言是一種資料庫查詢和程
序設計語言,用於存取數據以及查詢、更新和管理關系資料庫系統
特點
1.綜合統一
2.高度非過程化
3.面向集合的操作方式
4.以同一種語法結構提供多種使用方式
5.語言簡潔,易學易用
6.對於數據統計方便直觀
2)視圖是存儲在資料庫中的查詢的SQL 語句,視圖是從一個或多個表或視圖中導出的表,其結構
和數據是建立在對表的查詢基礎上的。
優點
提高數據安全性,可以不讓用戶看到表中的某個欄位。
3) 表,視圖,存儲過程,函數,觸發器,主鍵,外鍵,約束,索引
4)索引是表示數據的另一種方式,它提供的數據順序不同於數據在磁碟上的物理存儲順序。索引
的特殊作用是在表內重新排列記錄的物理位置。索引可建立在數據表的一列上,或建立在表的幾
列的組合上。
作用:
1、通過唯一性索引(unique)可確保數據的唯一性
2、加快數據的檢索速度
3、加快表之間的連接
4、減少分組和排序時間
5、使用優化隱藏器提高系統性能
5)數據完整性 是指數據的精確性(Accuracy) 和可靠性(Reliability)。它是應防止資料庫中存在不
符合語義規定的數據和防止因錯誤信息的輸入輸出造成無效操作或錯誤信息而提出的。
數據完整性分為四類:
1.實體完整性
2.域完整性
3.參照完整性
4.用戶定義的完整性
Ⅱ SQL復習題
其實不想一次問這么多的,也知道只求答案沒什麼意義,但是選錯專業只求不掛科TAT
U2.下面(A)資料庫不能執行分離操作
A. AdventureWorks
B.Test
C.Model
D.Pubs
U3.在資料庫中,系統表sysfilegroups用來存放資料庫的()
A.每個表、每個列的詳細設置
B.檢查約束表達式
C.用到了哪些數據類型
D.文件組信息
U7.查閱SQL Server幫助,EXEC xp_logininfo的功能為(B)
A 查看錶logininfo的約束信息
B 查看賬戶信息
C 查看當前登錄信息
D 查看當前許可權
U8.當執行update語句時,系統將自動創建(B)邏輯表。2
A.temp
B.deleted
C.hold
D.inserted
U8.update觸發器能夠對下列(B)修改進行檢查。2
A.修改資料庫名稱
B.修改表中的某行數據
C.修改表中的某列數據
D.修改標的結構
U8.下列語句在bank表上關鍵了一個trig_bank觸發器,一下說法正確的是(C)。2
CREATE TRIGGER tirg_bank
ON bank
FOR UPDATE,INSERT
AS
IF(SELECT MAX (currentMoney)FROM Inserted)>100000
BEGIN
...
END
A.當查詢current_Money列的數據時
B.當插入一行數據時
C.當bank表中的任一列被更新時
D.當插入多行數據時觸發器會出現錯誤
U11.下面(C)工具不適合將數據的副本復制到多個SQL Server中
A.分離附加
B.備份
C.INTO子句的查詢
D.SSIS導入/導出向導
U12.可以定義(D)類型的警報監視。
A.SQL Server性能
B.CPU使用率性能
C.改變一個登錄賬戶的安全許可權
D.一個應用程序生成的錯誤
U12.維護計劃可以定義的任務類型包括(B)。
A.建立資料庫
B.備份資料庫
C.收縮資料庫
D.執行SSIS包
Ⅲ sql資料庫復習
1? 不知道你要干嗎
2 CREATE DATABASE
3 DROP TABLE student
4 UPDATE ..
5 NULL是指未知,既不是空字元,也不是0
6 ? 看不到你的SQL語句
7 DISTINCT
8 SELECT * FROM S WHERE sno NOT LIKE 'N%'
9 INSERT INTO S(sno, sname, sex, depa) VALUES('1001', '李四', '男', '物電系')
10 DELETE FROM S WHERE sex = '男'
11 不見你的表結構
Ⅳ SQL資料庫復習題,求高人解答
表結構是要自己弄還是有現成的沒弄出來?
Ⅳ sql語句復習題 求助啊~~
怎麼也不給個表結構或庫結構看,如果不沒給,我就假設了
1. 為學生表增加一個欄位:出生日期 D
alter table 學生表
add
出生日期 datetime null;
2、將學生表中的「出生日期」欄位刪除
alter table 學生表
drop
column 出生日期 cascade
3、將學生表中所有團員的年齡置為18
update 學生表 set 年齡=18
(因為你沒給表結構,所以有些地方不一定像我這樣寫,別的方法也能實現,我這假設一個政治面貌的欄位)
where 政治面貌='團員'
4. 查詢所有女學生的姓名,性別,年齡
select 姓名,性別,年齡
from 表名
(我不知道你的這個性別這列是什麼類型,假高一個CHAR類)
where 性別='女'
5、查詢有考試成績的學生的學號,姓名和性別
select 學號,姓名,性別
from 表名
(假設考試成績欄位有的為NOT NULL,無為NULL)
where 考試成績 is not null
6、查詢選修了C1課程的學生的學號,姓名和專業
select 學號,姓名,專業
from 表名
where 課程=c1
7、查詢所有王華選修的課程的課程名和學分
select 課程,學分
from 表名
where 姓名='王華'
8、查詢和李明專業相同的學生的學號和姓名
法1:select 學號,姓名 from 表名 where 年齡 = (select 姓名 from 表名 where 姓名='李明');
(這種方法要用到內連)
法2:select 學號,姓名 from 表名 where 姓名 in (select 姓名 from 表名 where 姓名='李明');
當然我寫的全是命令方式,如果使用圖形方式更簡單.希望我寫的對你有所幫助
Ⅵ SQL 復習知識要點
對於新的SQL Server 2005有很多傳言。對於這次還未決定的發布,下面列舉了一些它的重要功能,你可以在不遠的未來這樣使用SQL Server。
在六月TechEd 2005大會上,是微軟收獲的時候:雖然產品發布的日期沒有宣布,但人們對微軟的新產品滿懷期待,許多人都很關注這一切。我們等待新的SQL Server很久了,在這個升級版本的資料庫技術中,微軟提供了我們想要的功能。這里是我們發現最為有用的一些功能。
1.XML數據類型
如果說SQL Server 2005有什麼功能值得大家歡呼雀躍的話,那就應該是新的本地XML數據類型了。為什麼這么說?除了目前在Web友好方面的大幅度進步之外,它還為我們提供了更多的設計選項(這些並不是微軟通常支持的),給我們的設計帶來了很多方面。
新的XML數據類型:
可以被用於表中的一列
可以作為參數或變數被用於存儲程序中
可以存儲非標准類的數據。
檢查計劃查看卷中存儲的數據是否同相關計劃的XML相匹配(如果沒有計劃,數據就會被認為是未分類的)
XML數據和相關數據之間的映射是雙向的。
2.DMO(Distributed Management Objects)變成了SMO(SQL Server Management Objects)
SQL Server Management Objects (SMO,SQL伺服器管理對象)是一個基於.NET架構的管理架構,它讓你能夠為伺服器管理創建個性化應用。SMO(同之前的DMO一樣)允許你把列、工作表、資料庫和伺服器都當作對象來處理,SMO支持SQL Server 2005的新功能,比如:Service Broker。
SMO是優化的,除非對象被明確涉及,否則就不完全是示例對象(所有的屬性都重新設定)。你也可以批量使用SQL命令,創建腳本來創建對象。你也可以自己定義用於在SQL Server 2000系統中管理SQL Server 7的伺服器管理應用。
3.CTEs (Common Table Expresssions) 支持遞歸查詢
CTE支持遞歸查詢。CTE可以自我指示,面對入侵有上限。你可以把CTE作為WITH、SELECT、UPDATE、INSERT或者DELETE等這樣的命令來使用。
4.Service Broker 幫助 SQL Server實現非同步通信
這是一個前端系統,它改變了一切。現在你可以使用新的Service Broker功能以非同步的方式實現對SQL Server通信的管理。通過幫助你的系統在邏輯上比物理上處理更多的通信,Service Broker提高了性能。Service Broker可以通過SQL命令進行訪問,並且能夠處理排隊等候事件。
這個功能給我留下了深刻的印象,以至於我不得不再三強調請大家注意它。在一個企業系統的數據層中增加一個配置容易的同步功能對於開發者來說簡直是福音,為網路應用帶來了大量的可能性。這種應用所能夠帶來的經濟效益很大。Service Broker本身就是升級到SQL Server 2005的一個很好理由。
5.創建.NET觸發事件
SQL Server 2005中.NET集成到了一定程度,這種集成所帶來的一個非常有用的結果就是在Visual Studio 2005中,用戶能夠定義觸發事件(user-defined triggers,UDTs)。
可以在Visual Studio的模板列表中找到觸發事件選項,用來生成一個文件來觸發代碼。在SOL中嘗試這個代碼的是SqlPipe。你可以在 「Build」|「 Deploy」中配置它。你可以使用T-SQL CREATE TRIGGER命令來提及觸發事件對象,把它用於其他方向(比如,從CLR)。
6.SQL Server 2005 的配置是完全動態的
如果你在Windows Server 2003系統中使用SQL Server 2005,它的配置就是全動態的,也就是說你可以在任何時候修改配置而不用中斷伺服器的工作、重啟機器,而且可以實時地看到反應(對於Address Windowing Extensions情況也是一樣的)。
7.定義你自己的數據類型
SQL Server 2005 和 .NET CLR的組合讓用戶可以自定義數據類型,這是以前功能的組合,這一功能讓你可以創建針對特殊應用或環境的數據類型。你可以把更多的常見類型進行擴展,僅僅要求你希望獲得的值,並以此作為觸發事件或者對於接受的數據進行限定。這里也有確認功能。
8.多個活動結果集,單一連接
這是另外一個不僅僅是值得關注,甚至還值得為之興奮的功能。MARS(Multiple Active Result Sets)幫助你在同一個連接中能夠執行多查詢並產生多個結果。如果需要,可以在開放的結果集中活動。性能和好處是明顯的。
這個新的優點是結合了新的ADO.NET和SQL Server 2005的容納多活動命令的能力而得到的。由於MARS是SQL Server 2005和ADO.NET 2.0的一部分,所以你只有兩者都使用了才能擁有MARS。
9.WAITFOR ... RECEIVE
在之前的SQL版本中,WAITFOR是靜態的。我們輸入一個等待時間的值,僅此而已。現在WAITFOR是動態的,告訴它等待直到收到一個「RECEIVE」狀態結果,而無須告訴它這將在什麼時候發生。
除了發出一聲普通的贊嘆之外,我們還應該感謝這一功能,因為它包含了新的Service Broker(參見#2)。由於Service Broker通過排隊等候(因此是完全動態的)實現資料庫的查詢,而查詢可能等待的時間長度是不一定的,所以新的、動態的WAITFOR可以根據Service Broker的判斷,等到出現RECEIVE結果的時候再結束等待,這種做法非常理想。
10.Integration Services取代DTS
在數據轉換方面有一種新的機制。目前非常流行、應用廣泛的DTS現在被Integration Services取代,它由Data Transformation Pipeline和Data Transformation Runtime組成。
數據適配器在源數據和目標數據之間建立管道,並在它們之間進行轉換。這是傳統的結構,但是用這種方法能夠實現可觀的復雜功能:例如,你可以做一對多映射,可以創建一個由轉換而得的數據列。
Data Transformation Runtime提供的組件讓你可以把數據載入和轉換過程組織成面向產品的操作,使用它們你可以管理連接並操作變數。這基本上是一個實時對象架構,並且可以同.NET應用進行綁定。
DTP和DTR組件是Integration Services包的組成部分,這同DTS包很類似,但是配置和控制能力方面卻高出很多,特別是在工作流方面。
Ⅶ SQL相關知識復習,比較難的幾個查詢
--方法.1
select *,(
select avg(score) from stumarks where stuinfo.stuid=StuMarks.stuid)as '平均分'
from stuinfo
--方法.2
select stuinfo.*,newtable.平均分 from stuinfo,(
select stuid,avg(score)as '平均分' from stumarks group by stuid)as newtable
where stuinfo.stuid=newtable.stuid
--方法3
select *,(select avg(score) from stumarks where stuinfo.stuid=StuMarks.stuid )as 平均分 from stuinfo
!