A. sql簡答題: 事務控制語句的使用方法是什麼
begin tran//開始事務commit //提交事務save tran//保存事務rollback//撤銷事務end trans//結束事務給你個例子:如下begin tran
declare @s int
select @s=面積 from 實驗.倉庫 with(nolock) where 倉庫號='SH0001'
print cast(@s as char)
waitfor delay '00:00:7'
select @s=面積 from 實驗.倉庫 with(nolock) where 倉庫號='SH0001'
print cast(@s as char)
commit
B. 一些SQL的試題
1.應用程序
2.實體完整性
3.distince
4.
5.create Nonclustered index IDX_authors on authors(州名列,城市名列)
6.創建表
7.select 列名 from 表名
8.sum()
9.top
10.alter procere
11.ltrim()
12.declare @變數名 數據類型
13.where
14.from
15.order by
16.cast(表達式 as 數據類型)
17.count()
18.drop procere 存儲過程名
19.創建資料庫
20.價格大於15美元的所有數據
21.資料庫
22.rollback
23.
24.服務管理器
25.
26.數據冗餘(備份)
27.3
28.資料庫
29.應用程序
30.drop table
33.操作系統
許可權
1.
2.是並發控制的單位,是用戶定義的一個操作序列,具有原子性,一致性,隔離性,持續性四個特性。
3.共享鎖(S鎖):如果事務T對數據A加上共享鎖後,則其他事務只能對A再加共享鎖,不能加排他鎖.
獲准共享鎖的事務只能讀數據,不能修改數據。
4.
5.
1.存儲過程可以使得程序執行效率更高、安全性更好,因為過程建立之後 已經編譯並且儲存到資料庫,直接寫sql就需要先分析再執行因此過程效率更高,直接寫sql語句會帶來安全性問題,如:sql注入
2.建立過程不會很耗系統資源,因為過程只是在調用才執行。
6.聚簇索引是一種對磁碟上實際數據重新組織以按指定的一個或多個列的值排序。
7.
8.是並發控制的單位,是用戶定義的一個操作序列,具有原子性,一致性,隔離性,持續性四個特性。
BEGIN TRAN [Tran_name]開始事務
COMMIT TRAN [Tran_name]事務完成提交事務
9.存儲過程是由流控制和SQL語句書寫的過程,這個過程經編譯和優化後存儲在資料庫伺服器中,應用程序使用時只要調用即可。
10.增量備份:是針對於上一次備份(無論是哪種備份):備份上一次備份後,所有發生變化的文件。
12.原子性,要麼都做,要麼不做。
13.排它鎖若事務T對數據對象A加上X鎖,則只允許T讀取和修改A,其它任何事務都不能再對A加任何類型的鎖,直到T釋放A上的鎖。
它防止任何其它事務獲取資源上的鎖,直到在事務的末尾將資源上的原始鎖釋放為止。
14.分布式資料庫系統通常使用較小的計算機系統,每台計算機可單獨放在一個地方,每台計算機中都有DBMS的一份完整拷貝副本,並具有自己局部的資料庫,位於不同地點的許多計算機通過網路互相連接,共同組成一個完整的、全局的大型資料庫。
15.
17同2,18同8
19.DBMS資料庫管理系統,DBA資料庫管理員
20.1對1,一個學生對應一個學號
1對多 一個學生對應多門功課
多對多 商品與廠商
(備註:只能做這么多了,很長時間沒看書了,有時間可以看看<資料庫系統概論>薩師煊 王珊 高等教育出版社,很不錯的一本書哦。上有你要的答案,特別是簡答題。)
21.
22.資料庫完整性,對資料庫提出的某種約束條件或規則。
分三種:實體完整性,參照完整性,用戶自定義完整性
23.
24.原則如下:
●在經常進行連接,但是沒有指定為外鍵的列上建立索引,而不經常連接的欄位則由優化器自動生成索引。
●在頻繁進行排序或分組(即進行group by或order by操作)的列上建立索引。
●在條件表達式中經常用到的不同值較多的列上建立檢索,在不同值少的列上不要建立索引。比如在雇員表的「性別」列上只有「男」與「女」兩個不同值,因此就無必要建立索引。如果建立索引不但不會提高查詢效率,反而會嚴重降低更新速度。
●如果待排序的列有多個,可以在這些列上建立復合索引(compound index)。
26。聚集索引確定表中數據的物理順序。由於聚集索引規定數據在表中的物理存儲順序,因此一個表只能包含一個聚集索引。但該索引可以包含多個列(組合索引)
非聚集索引一種索引,該索引中索引的邏輯順序與磁碟上行的物理存儲順序不同。一個表可以有多個聚集索引
C. 最高分求SQL Server試題,考試要用,急!
一、填空題
1、beautiful、我心中的太陽--(去掉了右邊的空格)
2、實體、域
3、視圖
4.13.4300、13.4570--(保留2位和三位小數,但總位數不變)
5、數據定義語言(DDL)、數據操作語言(DML)
6、網狀、關系、關系
7、二維表、屬性、元組
8、一對一、一對多、多對多
9、%、_
二、選擇題
1、C
2、B
3、A
4、A
5、C
6、D
7、A
8、C
9、D
10、B
11、A
12、A
13、B
14、B
15、B
三、判斷題
1、√
2、ⅹ
3、ⅹ----會取整(12)
4、ⅹ
5、ⅹ--物極必反,多了存儲數據時會消耗較多系統資源
6、ⅹ--連接、投影結果是不一樣的
7、ⅹ--視圖上可以創建觸發器,但與表功能不相同
8、ⅹ
9、√
10、√
四、簡答題
(一)
區別:
1、視圖是已經編譯好的sql語句。而表不是
2、視圖沒有實際的物理記錄。而表有。
3、表是內容,視圖是窗口
4、表只用物理空間而視圖不佔用物理空間,視圖只是邏輯概念的存在,表可以及時四對它進行修改,但視圖只能有創建的語句來修改
5、表是內模式,試圖是外模式
6、視圖是查看數據表的一種方法,可以查詢數據表中某些欄位構成的數據,只是一些SQL語句的集合。從安全的角度說,視圖可以不給用戶接觸數據表,從而不知道表結構。
7、表屬於全局模式中的表,是實表;視圖屬於局部模式的表,是虛表。
8、視圖的建立和刪除隻影響視圖本身,不影響對應的基本表。
視圖優點:1、聚焦特定的數據。
2、簡化數據操作
3、定製用戶數據
4、對重構資料庫提供了一定程度的邏輯獨立性
5、合並分離的數據
6、屏蔽資料庫的復雜性
7、簡化用戶許可權的管理
8、便於數據的共享
(二)
含義:
存儲過程(Stored Procere)是一組為了完成特定功能的SQL語句集,經編譯後存儲在資料庫中。用戶通過指定存儲過程的名字並給出參數(如果該存儲過程帶有參數)來執行它。存儲過程是資料庫中的一個重要對象,任何一個設計良好的資料庫應用程序都應該用到存儲過程。
語法:
CREATE PROCEDURE [擁有者.]存儲過程名[;程序編號]
[(參數#1,…參數#1024)]
[WITH
{RECOMPILE | ENCRYPTION | RECOMPILE, ENCRYPTION}
]
[FOR REPLICATION]
AS 程序行
D. 一道SQL數據的簡答題,請大家幫忙解決。
selectdeptno as 部門號,min(sal) as 最低工資,max(sal) as 最高工資 from emp group bydeptno
selectdname as 部門,ename as 員工,min(sal) as 最低工資,max(sal) as 最高工資 from emp,dept where emp.deptno=dept.deptno andemp.job='CLERK' group bydeptno
selectename as 員工,deptno as 部門號 from emp where deptno in (select deptno
from emp where emp.ename='buddy')select ename as 員工姓名,mgr as 管理者姓名 from emp where mgr<>''
select deptno as 部門號,dname as 部門名,ename as 員工名,job as 工作 from dept,emp where dept.deptno=emp.deptno and emp.job='CLERK'
第4題的where條件另一回答是whereemp<>null ,首先請問樓主emp表中有emp欄位嗎,其次就算有emp欄位,也和null搭不上關系,應該是判斷是否為空串,就算是和null搭得上關系,那麼欄位名和null之間是應該用什麼連接的,<>null明顯是語法錯誤,應該是emp is not null才對!明明是mgr欄位嘛,我寫的應該是對的呀,為什麼採納錯誤的答案?
E. SQL Server2005習題答案(急急急)求大神幫助
二、簡答題 (40分) 1. 設有如下關系表R: R(NO,NAME,SEX,AGE,CLASS) 主關鍵字是NO,其中NO為學號,NAME為姓名,SEX為性別,AGE為年齡,CLASS為班號。寫出實現下列功能的SQL語句。 (每題5分,共5*4=20分) 1) 插入"95031"班學號為30,姓名為"鄭和"的學生記錄。 insert R (NO,NAME,CLASS) Values('30','鄭和','95031') 2) 刪除學號為20的學生記錄。 delete from R where NO='20' 3) 統計每個班級的學生人數。 select CLASS,Count(CLASS) from R Group by CLASS 4) 查詢所藏圖書中,各個出版社的圖書最高單價、平均單價和冊數。 2. 設有圖書管理資料庫: 圖書(總編號C(6),分類號C(8),書名C(16),作者C(6),出版單位C(20),單價N(6,2)) 讀者(借書證號C(4),單位C(8),姓名C(6),性別C(2),職稱C(6),地址C(20)) 借閱(借書證號C(4),總編號C(6),借書日期D(8)) 其中C表示char類型;N表示numeric類型;D表示DateTime類型,寫出以下要求的SQL語句:(每題5分,共5*4=20分) 1) 查詢由"清華大學出版社"或"電子工業出版社"出版,並且單價不超出20元的書名。 select 書名 from 圖書表 where 單價 < 20 and 出版單位 in ('清華大學出版社','電子工業出版社') 2) 查詢共借出多少種圖書。 3) 查詢「CIE」單位借閱圖書的讀者的人數。 4) 查詢書價在15元至25元(含15元和25元)之間的圖書的書名、作者、書價和分類號,結果按分類號升序排序。
F. 求SQL選擇題,只要 索引,試圖游標,存儲過程 觸發器 事務處理與並發控制.
今天的資料庫試題(滿意不?): 一,簡答題1、簡述SQL Server 資料庫系統的安全性四個層次答案: 2,簡述視圖概念以及視圖作用答案: 3,簡述索引的概念,分類,作用以及用法答案: 4. 請闡述事務的概念,作用以及特點?答案: 二.編程一.已知學生資料庫中存在這樣的三張表,學生表:學號,姓名,性別,年齡,系別Student(Sno,Sname,Ssex,Sage,Sdept),課程表:課程編號,課程名稱,授課老師Course(Cno,Cname,Cteacher), 成績表:學號,課程號,成績SC(Sno,Cno,Grade) 按要求完成下列操作:1. 查詢選修了3號課程的學生的學號及其成績,查詢結果按分數的降序排列 2.查詢選修了課程名為「信息系統」的學生學號和姓名 3.查詢每個學生的學號、姓名、選修的課程名及成績 4.利用查詢創建一張新表student1,把跟』劉晨』在同一個系學習的學生的基本信息放到表student1中 5.求各個課程號及相應的選課人數 6.查詢選修了3門以上課程的學生學號 7. 列出「1」號課成績比「2」號同學該門課成績高的所有學生的學號 8. 列出「1」號課成績比「2」號課成績高的所有學生的學號及其「1」號課和「2」號課的成績 9. 找出沒有選修過「李明」老師講授課程的所有學生姓名 10. 列出有二門以上(含兩門)不及格課程的學生姓名及其平均成績 11. 列出既學過「1」號課程,又學過「2」號課程的所有學生姓名 12.這時,管理員要在學生表中修改某個學生的學號,這時就希望修改了學生表中的學號,成績表中的該學號也應該變成在學生表中修改後的學號,不許使用兩個UPDATE,而希望用觸發器實現,即修改了學生表中的學號,成績表中對應的學號也作一致變化,應如何操作? 二.已知學生資料庫中存放了這樣的兩張表,如下所示,一張為畢業生信息表,記錄畢業生的一些基本信息,一張為學生繳費表,記錄了學生的繳費信息。由於學生畢業,我們要從學生信息表中把畢業生的記錄刪除,但是如果這個學生欠費的話,則不允許刪除這個學生的記錄,要求:刪除畢業生信息表中的哪條記錄,必須通過存儲過程實現,並帶有輸入參數,而判斷該學生是否欠費,必須使用觸發器實現。(提示:用帶輸入參數的存儲過程完成刪除操作,用觸發器判斷是否欠費,如果欠費,則回滾事務)畢業生信息表學號 姓名 性別 地址 聯系方式001 吳迪 男 淮南市潘集鎮趙前村18號 0554-6840157002 潘倩萍 女 蕪湖市繁昌縣孫村鎮65號 0553-4855986003 余建星 男 黃山市歙縣北岸鎮52號 0559-7852013004 賀艷 女 蚌埠市長淮衛鎮淮上村85號 0552-6589421學生繳費表學號 姓名 已交費用 欠費001 吳迪 5000 400002 潘倩萍 5400 0003 余建星 4000 1400004 賀艷 3000 2400 三.現要為學校建立一個資料庫,設學校環境如下:一個系有若干個專業,每個專業一年只招一個班,每個班有若干個學生。 . 現要建立關於系、學生、班級的資料庫,關系模式為:學生 STUDENT (學號,姓名,性別,年齡,班號)班 CLASS (班號,專業名,系名,入學年份)系 DEPARTMENT (系號,系名)試用 SQL 語言完成以下功能:1、建表,在定義中要求聲明:( 1 )每個表的主鍵。( 2 )學生的年齡介於 15 到 40 歲之間。( 3 )學生姓名不能為空。2、插入如下數據 CLASS ( 101 ,軟體,計算機, 1995 ; 102 ,微電子,計算機, 1996 ; 111 ,無機化學,化學, 1995 ; 112 ,高分子化學,化學, 1996 ; 121 ,統計數學,數學, 1995 ; 131 ,現代語言,中文, 1996 ; 141 ,國際貿易,經濟, 1997 ; 142 ,國際金融,經濟, 1996 ; )STUDENT ( 8101 ,張三,男, 18 , 101 ; 8102 ,錢四,女, 16 , 121 ; 8103 ,王玲,女, 17 , 131 ; 8105 ,李飛,男, 19 , 102 ; 8109 ,趙四,女, 18 , 141 ; 8110 ,李可,女, 20 , 142;DEPARTMENT(01,中文; 02,計算機;03,數學; 04,化學;05,經濟;) 3 完成以下查詢功能( 1 )找出所有姓李的學生,並按其年齡由小到大排序。( 2 )列出所有開設超過兩個專業的系的名字。( 3 )列出學生的基本信息、入學年份、所在系的名稱。( 4 )列出年齡在19~20之間的學生的姓名、系名和年齡 4.創建一個視圖,包含學生的姓名,性別,班號和系號。 5.在班級表建立一個觸發器,當某班號的記錄被刪除時,學生表中對應班號的學生記錄自動刪除。 6. 用查詢分析器創建一個學生資料庫(student),將數據文件和日誌文件都存放在D盤自已學號的目錄下。其中數據文件和日誌文件初始大小都為3MB,自動增長率都為10%。 四,假設供應銷售資料庫有供應商表s,零件表p,工程項目表j,供銷情況表spj關系,希望建立四個索引,其中,供應商s中sno按升序建立索引,零件p中pno 按升序建立索引,工程項目j中jno按升序建立索引,供銷情況 spj中sno按升序,pno按降序,jno按升序建立索引