1. 資料庫維護的工作的主要內容是什麼
資料庫日常維護工作是系統管理員的重要職責。其內容主要包括以下幾個部分:
一、備份系統數據
SYBASE 系統的備份與恢復機制保證了在系統失敗時重新獲取數據的可能性。sql Server 提供了兩種不同類型的恢復機制:一類是系統自動完成的恢復,這種措施在每次系統啟動時都自動進行,保證了在系統癱瘓前完成的事務都寫到資料庫設備上,而未完成的事務都被回退;另一類是人工完成的恢復,這是通過 DUMP 和 LOAD 命令來執行人工備份和恢復工作。因此定期備份事務日誌和資料庫是一項十分重要的日常維護工作。
1、備份資料庫
每一個資料庫都應在創建之後卸出,從而提供一個裝入基點。在此之後按排定的時間周期表卸出。比如每周五卸出資料庫。對一般資料庫系統卸出資料庫周期建議為每周一次。
除了按計劃周期卸出資料庫之外,還需在每次運行沒有日誌的操作後卸出資料庫。例如:
·每次強制地運行了 DUMP TRAN WITH NO_LOG (因為資料庫的磁碟空溢出);
·每次用 sp_dboption 允許 select into/bulk 做快速拷貝,或用 SELECT INTO 命令創建一個永久性的表,或使用了 WRITETEXT 命令。
卸出資料庫的命令為:
DUMP DATABASE database_name
TO mp_device
database_name 是要卸出的資料庫名稱,mp_device 是卸出設備的名稱。用系統過程 sp_helpdevice 可以獲得設備的信息。
下面一條命令用來卸出資料庫 my_db :
DUMP DATABASE my_db
TO db_bk_dev
2、備份事務日誌
如果事務日誌與資料庫放在同一個設備上,則事務日誌不應與資料庫分開備份。master 資料庫和小於 4M 的用戶資料庫就是這種情況。一般資料庫系統的資料庫和日誌分別放在不同的設備上,因此,可以用 DUMP TRAN 命令單獨備份日誌。
備份事務日誌的周期直接影響數據的恢復程度,因此建議每天備份。
備份事務日誌的命令格式為:
DUMP TRANsaction database_name
[TO mp_device]
[WITH TRUNCATE_ONLYWITH NO_LOGWITH NO_TRUNCATE]
其中 database_name 是要備份事務的資料庫名稱,mp_device 是備份設備名稱,僅當包含了 WITH TRUNCATE_ONLY 或 WITH NO_LOG 子句時,才可以備份到設備。
注意:如果總是用 DUMP DATEBASE (備份資料庫及其日誌),而不用 DUMP TRAN ,事務日誌將不會刷新,而變得非常龐大。
對於 master 資料庫和小型資料庫每次運行 DUMP DATEBASE 之後應當運行 DUMP TRANsaction 命令刷新日誌 。
下面一條命令備份資料庫 db160 的事務日誌到備份設備上:
DUMP TRANsaction db160
TO db_log_bk_dev
WITH TRUNCATE_ONLY
3、備份資料庫及其日誌間的相互作用
在至少卸出一次資料庫前,卸出事務日誌是毫無意義的。下圖顯示了備份資料庫及其日誌間的關系
如果在星期二下午5:01出現非硬體故障,需要做的所有工作是裝入磁帶5(參見下一節:數據恢復),由於磁帶5是下午5:00剛備份的,因此只有備份和裝入之間的一分鍾內的數據損失。
但是,如果在星期二下午4:49失效會怎麼樣呢?在這種情況下,要裝入磁帶1(在星期五下午5:00的卸出)。然後,依次裝入磁帶2,3以及4。這樣,系統將恢復到星期二上午10:00點的狀態,星期二的大部分工作丟失了。此例顯示了經常卸出事務的重要性。
二、萬一系統失敗時恢復資料庫系統
如果用戶資料庫存儲的設備失效,從而資料庫被破壞或不可存取,通過裝入最新的資料庫備份以及後來的事務日誌備份可以恢復資料庫。假設當前的事務日誌存在於一個並沒有毀壞的設備上,帶著 WITH NO_TRUNCATE 選項的 DUMP TRANsaction 命令卸出它。
要恢復資料庫按如下步驟去做:
1、如果日誌存在於一個分離的設備上,用帶著 NO_TRUNCATE 選項的 DUMP TRANsaction 命令卸出被毀壞的或者不可存取的用戶資料庫事務日誌。
2、用下面的查詢檢查設備分配已毀壞資料庫的設備使用情況。必須為同一目的賦同樣的空間塊。
下面的查詢顯示了分配給資料庫 mydb 設備使用和尺寸情況:
SELECT segmap,size FROMsysusages
WHERE dbid =
( SELECT dbid FROM sysdatabases WHERE name = 「mydb」)
3、檢查查詢的輸出。在 segmap 列的 『3』代表數據分配,『4』代表日誌分配。size 列代表 2K 數據塊的數目。注意此信息的次序、使用和尺寸部分。例如,輸出為:
segmapSize
--------------------
310240//實際尺寸為:20M
35120//實際尺寸為:10M
45120//實際尺寸為:10M
31024//實際尺寸為:2M
42048//實際尺寸為:4M
4、用 DROP DATABASE 命令刪除毀壞設備上的資料庫。如果系統報錯,用DBCC DBREPAIR 命令的 DROPDB 選項。
5、刪除資料庫後,用 sp_dropdevice 刪除毀壞了的設備。
6、用 DISK INIT 初始化新的資料庫設備。
7、重建資料庫。用 CREATE DATABASE 命令從老的 sysusages 表拷貝所有的行,並包含第一邏輯設備。
對上例,命令為:
CREATE DATABASE mydb
ON datadev1=20,datadev2=10
LOG ON logdev1=10
8、用 ALTER DATABASE 命令重建其餘入口。在此例中,在datadev1上分配更多的空間,命令為:
ALTER DATABASE mydb ON datadev1=2
9、用 LOAD DATABASE 重新裝入資料庫,然後用 LOAD TRAN 裝入前面卸出的日誌。
LOAD DATABASE 命令語法是:
LOAD DATABASE database_name
FROM mp_device
LOAD TRANsaction 命令的語法是:
LOAD TRANsaction database_name
FROM mp_device
卸出資料庫和事務日誌的預設許可權歸資料庫所有者,且可以傳遞給其他用戶;裝載資料庫和事務的許可權也歸資料庫所有者,但不能傳遞。
二、產生用戶信息表,並為信息表授權;
系統維護人員的另一個日常事務是為用戶創建新的信息表,並為之授權。創建表以及為表授權的方法已經在講過,在此只將有關命令語法寫出來。
·創建表的命令為:
CREATE TABLE table_name
( column_1 datatype [NULL NOT NULL IDENTITY],
column_2 ……
)
go
ALTER TABLE table_name
ADD PRIMARY KEY (column_list)
go
·刪除表的命令格式為:
DROP TABLE table_name
go
·為表授權的命令格式為:
GRANT {ALLpermission_list}
ON table_name TO user_name
go
·收回許可權的命令格式為
REVOKE {ALLpermission_list}
ON table_name FROM user_name
go
三、監視系統運行狀況,及時處理系統錯誤;
系統管理員的另一項日常工作是監視系統運行情況。主要有以下幾個方面:
1、監視當前用戶以及進程的信息
使用系統過程:sp_who
說明:該命令顯示當前系統所有注冊用戶及進程信息,如下表是某系統的信息。
---------------------------------------------------------------
2SleepingNULL0MasterNETWORK HANDLE
3SleepingNULL0MasterDEADLOCK TUNE
4SleepingNULL0MasterMIRROR HANDLER
SLEEP
從左向右依次顯示:進程號、當前狀態、注冊用戶名、主機名、佔用塊數、資料庫名以及當前命令。
如果監視時發現進程總數接近最大連接數(用系統過程:sp_configure 「user conn」 查看)時,應下掉不活動或無關進程,以保證系統正常運做;另外亦可監視非法用戶或用戶使用不屬於自己使用范圍的資料庫等情況。
2、監視目標佔用空間情況
使用系統過程:sp_spaceused
說明:該過程顯示行數、數據頁數以及當前資料庫中由某個目標或所有目標所佔用的空間。如下表是某資料庫日誌表的信息:
NameRow_totalreserveddataIndex_sizeunused
------------------------------------------------------------
SyslogsNot avail32KB32KB0KBNot avail
日常要監視的主要目標有:用戶資料庫、資料庫日誌表(syslogs)以及計費原始數據表等。如果發現佔用空間過大,對日誌表要進行轉儲;對其他目標則應擴充空間或清楚垃圾數據。
3、監視 SQL Server 統計數字
使用系統過程:sp_monitor
說明:sp_monitor 顯示SQL Server 的歷史統計數字,下表是某系統的統計數字:
Last_runCurrent_runSeconds
---------------------------------------------------------------
May 13 2000 1:27PMMay 13 2000 3:01PM5678
CPU_busyIO_busyIdle
---------------------------------------------------------------
16(6)-0%0(0)-0%5727(5672)-99%
Packets_receivedPackets_sentPacket_errors
---------------------------------------------------------------
21(17)100(97)0(0)
Total_readTotal_writeTotal_errorsConnections
--------------------------------------------------------
785(366)311(113)0(0)3(2)
上表依次給出該系統本次運行統計的上一次時間、本次時間、間隔秒數、CPU佔用、IO佔用、收發包情況、系統讀入寫出情況等信息
四、保證系統數據安全,周期更改用戶口令;
為保證系統數據的安全,系統管理員必須依據系統的實際情況,執行一系列的安全保障措施。其中,周期性的更改用戶口令是比較常用且十分有效的措施。
更改用戶口令是通過調用系統過程sp_password 來實現的。Sp_password 的語法為:
sp_password caller_password,new_password [,loginame]
其中caller_password 是登錄口令(老口令),new_password是新口令,loginame是登錄名稱。
2. 資料庫運維服務具體有哪些
資料庫運維服務是指:針對用戶資料庫開展的軟體安裝、配置優化、備份策略選擇及實施、數據恢復、數據遷移、故障排除、預防性巡檢等一系列服務。
主要服務內容如下:
1、資料庫安裝與配置;主要指定製資料庫安裝配置方案,檢查軟體安裝環境,安裝資料庫軟體,完成資料庫配置,並測試之;
2、資料庫性能優化: 主要是指核心參數調優,SQL語句調優,性能評估方案的提供。
3、資料庫備份與恢復;主要是指本地、異地、同步、實時的分級備份與恢復方案及實施;
4、數據遷移:不同版本、不同廠商、不同結構資料庫間的數據遷移;
5、故障排除;通過遠程、上門等方式按服務級別實施故障排除
6、預防性巡檢;定期提供預防性巡檢,並完成系統參數、配置調優,及補丁分發、安裝服務。
3. (2)資料庫運維的核心任務是什麼
1、資料庫的配置、維護
2、伺服器的配置與維護
3、應用軟體的運行與維護
4、功能的擴展
資料庫運維服務是指:針對用戶資料庫開展的軟體安裝、配置優化、備份策略選擇及實施、數據恢復、數據遷移、故障排除、預防性巡檢等一系列服務。
4. 泰山學院資料庫題庫
判斷題
1、 安裝Microsoft SQL Server 2000 企業版對操作系統的最低要求可以是Microsoft Windows 2000 Professional。(b )
a) 正確 b)錯誤
2、每一個伺服器必須屬於一個伺服器組。一個伺服器組可以包含0個、一個或多個伺服器。( a)
a) 正確 b)錯誤
3、 驗證模式是在安裝SQL Server過程中選擇的。系統安裝之後,可以重新修改SQL Server系統的驗證模式。(a )
a) 正確 b)錯誤
4、當用戶定義的數據類型正在被某個表的定義引用時,這些數據類型不能被刪除。(a )
a) 正確 b)錯誤
5、在使用子查詢時,必須使用括弧把子查詢括起來,以便區分外查詢和子查詢。( a)
a) 正確 b)錯誤
6、 索引越多越好。(b )
a) 正確 b)錯誤
7、 視圖本身不保存數據,因為視圖是一個虛擬的表。( a)
a) 正確 b)錯誤
8、 創建觸發器的時候可以不是表的所有者或資料庫的所有者。(b )
a) 正確 b)錯誤
9、select 16%4, 的執行結果是: 4 嗎?( b)
a) 正確 b)錯誤
10.在SQL Server中用戶不能建立全局變數。(a )
a) 正確 b)錯誤
11.備份時只能對數據文件進行備份。(b )
a) 正確 b)錯誤
12.自定義函數在對任何錶的查詢中都可以使用。( a)
a) 正確 b)錯誤
13.觸發器是通過事件進行觸發而被執行的。(a )
a) 正確 b)錯誤
14.主鍵欄位允許為空。( b)
a) 正確 b)錯誤
15.SQL Server 自動為primary key約束的列建立一個索引。(a )
a) 正確 b)錯誤
16.SQL Server的資料庫可以導出為Access資料庫。( a)
a) 正確 b)錯誤
8.刪除表時,表中的觸發器不被同時刪除。( b)
a) 正確 b)錯誤
17.資料庫的名稱可在企業管理器中重命名。( b)
a) 正確 b)錯誤
18.觸發器與約束發生沖突,觸發器將不執行。(a )
a) 正確 b)錯誤
19.ODBC是由Microsoft定義的一種資料庫訪問標准。( a )
a) 正確 b)錯誤
20.信息和數據是相對的,有時是可以互相轉換的。(a )
a) 正確 b)錯誤
21.創建存儲過程必須在企業管理器中進行。( b )
a) 正確 b)錯誤
22.觸發器主要是通過表操作事件進行觸發而被執行的。(a )
a) 正確 b)錯誤
23.主鍵欄位允許為空。( b )
a) 正確 b)錯誤
24.SQL Server 自動為primary key約束的列建立一個索引。(a )
a) 正確 b)錯誤
25.SQL Server的資料庫可以轉換成Access資料庫。(a )
a) 正確 b)錯誤
26.刪除表時,表中的觸發器被同時刪除。( a )
a) 正確 b)錯誤
27.資料庫的名稱一旦建立就不能重命名。( b )
a) 正確 b)錯誤
28.固定資料庫角色:db_datarader 的成員可修改本資料庫內表中的數據。( b )
a) 正確 b)錯誤
29.'在那遙遠的地方' 是SQL中的字元串常量嗎?(正確)
30.'11.9' 是SQL中的實型常量嗎(錯誤)
31.select 16%4, 的執行結果是: 4 .(錯誤)
32.2005.11.09 是SQL中的日期型常量.(錯誤)
33.select 25/2 的執行結果是: 12.5 .(錯誤)
34.'岳飛'>'文天祥' 比較運算的結果為真. (正確)
35.一個表可以創建多個主鍵.(錯誤)
36. smallint 是SQL的數據類型.Y
37. SQL Server不允許欄位名為漢字.N
38. 職稱 in ('教授', '副教授'')與 職稱 = '教授' or 職稱 = '副教授' 等價.Y
39. 如果規則當前綁定到某列或用戶定義的數據類型,不能解除綁定能直接刪除規則.N
40. 在表中創建一個標識列(IDENTITY),當用戶向表中插入新的數據行時,系統自動為該行標識列賦值嗎.Y
41. 在查詢分析器中執行SQL語句的快捷鍵是F1。N
42. 計算ASCII('also')結果為97。Y
43. UNION運算符是用於將兩個或多個檢索結果合並成一個結果。Y
44. Lock許可權不是資料庫的訪問許可權。N
45. 資料庫管理系統管理並且控制數據資源的使用。Y
46. '李白'>'杜甫' 比較運算的結果為真.Y
47. SQL Server有數據導入功能但沒有數據導出功能。N
48. SQL Server的角色與windows NT的組含義相似。Y
49. 視圖和表是完全一樣的.N
50. SQL Server允許用戶自定義類型.Y
51. 惟一鍵就是主鍵.N
52. SQL Server不允許欄位名為漢字.N
53. 作為字元串型數據'李白'是排在'杜甫' 的前面.N
54. smallint是SQL的數據類型.Y
55. 設置惟一約束的列不允許為空.N
56.主鍵可以是復合鍵.Y
57.連接、選擇和投影三種關系運算具有相同的結果。N
58.數據的安全性主要防範的對象是合法用戶。N
59.定義外鍵級級聯是為了保證相關表之間數據的一致性. Y
60.創建唯一性索引的列可以有一些重復的值.N
61.存儲過程的輸出結果可以傳遞給一個變數。Y
62.視圖具有與表相同的功能,在視圖上也可以創建觸發器。N
63.SQL Server 2000不具有數據的導入與導出功能。N
64. SQL Server有數據備份功能但沒有數據還原功能。N
65. 計算ASCII('also')結果為97。Y
66. sysadmin角色的成員可以在伺服器中執行任何操作嗎?Y
67. 語句 select 15/2 的執行結果是: 7.5 嗎?N
68. 事務故障恢復時要對事務的每一個操作執行逆操作,即將日誌記錄中「改前值」寫入資料庫中。Y
69. SQL Server有數據導入功能但沒有數據導出功能。N
70. "xingming" 是SQL中的字元串常量.N
71. 語句 select 22%4, 的執行結果是: 0 .N
72. "2005.11.09" 是SQL中的日期型常量.N
73. 'AB'>'CD' 比較運算的結果為真.N
74. bigint是SQL的數據類型.Y
75.資料庫不允許存在數據冗餘。N
76.在SQL Server系統中,數據信息和日誌信息不能放在同一個操作系統文件中。Y
77. guest用戶必須關聯一個登錄賬號才可以在資料庫中創建。資料庫中的非guest用戶賬號都必須關聯一個登錄賬號。N
78. DELETE語句只是刪除表中的數據,表本身依然存在資料庫中。Y
79.通配符「_」表示某單個字元。Y
80.sa能否創建和刪除資料庫角色?Y
5. 哪位大俠可以提供一些mysql資料庫的題庫,一定要帶答案的!將感激不盡!!
一、不定項選擇題(共40題,每小題2.5分,總分100分)
1. 資料庫管理系統的發展歷經了如下那些模型階段( ACDE )
A. 層次模型 B. 結構模型 C. 關系模型
D. 網狀模型 E.對象模型
2. 關系型資料庫的核心單元是( B )
A. 對象 B. 表
C. 行 D. 列
3. 對於關系型資料庫來說,表之間存在下面那些關系( ABC )
A. 一對一關系 B. 一對多關系
C. 多對多關系 D. 繼承關系
4. 在SQL中,下面對於數據定義語言(DDL)描述正確的是( D )。
A. DDL關心的是資料庫中的數據 B. 完成數據的增、刪、改、查操作
C. 控制對資料庫的訪問 D. 定義資料庫的結構
5. MySQL是一種( C )資料庫管理系統。
A. 層次型 B. 網路型 C. 關系型 D. 對象型
6. SQL中,下列操作有語法錯誤的是( B )
A. AGE IS NOT NULL B. NOT(AGE IS NULL)
C. SNAME=『王五』 D. SNAME=『王%』
7. SQL中,下列關於創建、管理資料庫的操作語句不正確的是( CDE )
A. CREATE DATABASE Instant B. USE Instant C. NEW DATABASE Instant
D. Connection Instant E. Delete DATEBASE Instant
8. 在MySQL中,不存在的數據類型是( F )。
A. INT B. TEXT C. DECIMAL
D. VARCHAR E. DATETIME F. VARCHAR2
9. 在MySQL中,下列關於創建資料庫表的描述正確的是( C )。
A. 在創建表時必須設定列的約束
B. 在刪除表的時候通過外鍵約束連接在一起的表會被一同刪除
C. 在創建表時必須設置列類型
D. 通過CREATE TABLE new_t SELECT * FROM old_t復製表的同時,表的約束能夠一起被復制到新表中
10. 根據數據完整性實施的方法,可以將其分為( ACDF )
A. 實體完整性 B. 表完整性 C.域完整性
D. 引用完整性 E. 記錄完整性 F.用戶自定義完整性
11. 下面關於域完整性的方法,不正確的是( A )。
A. 主鍵約束 B. 外鍵約束 C.檢查約束
D. 非空約束 E. 默認值
12. 下面關於創建和管理索引正確的描述是( C )。
A. 創建索引是為了便於全表掃描
B. 索引會加快DELETE、UPDATE和INSERT語句的執行速度
C. 索引被用於快速找到想要的記錄
D. 大量使用索引可以提高資料庫的整體性能
13. SQL中,「AGE IN(20,22)」的語義是( D )。
A. AGE<=22 AND AGE >=20 B. AGE <22 AND AGE >20
C. AGE =20 AND AGE =22 D. AGE =20 OR AGE =22
14. 有一個關系:學生(學號,姓名,系別),規定學號的值域是8個數字組成的字元串,這一規則屬於( C )
A. 實體完整性約束 B. 參照完整性約束
C. 用戶自定義完整性約束 D. 關鍵字完整性約束
15. 下面SQL是來源於考試成績表t_exam:學號stuId、科目編號subId、成績score,考試日期:ex_date。有以下sql,它表示的意思是:( B )
Select stu_id,subId,count(*) as x
From t_exam
Where ex_date=』2008-08-08』
Group stu_id,subId
Having count(*)>1
Order by x desc
A. 找出』2008-08-08』這天某科考試2次及以上的學生記錄
B. 找出』2008-08-08』這天,某科考試2次及以上的學生記錄,考試次數多的放在前面
C. 找出』2008-08-08』這天,某科考試2次及以上的學生記錄,考試次數少的放在前面
D. 根據學號和學科分組,找出每個人考試科數,最後考試次數多的放在前面
16. EMP表如下所示,下面哪些SQL語句的返回值為3:( BD )
EMP
雇員號 雇員名 部門號 工資
001 張山 022000
010 王宏達01 1200
056 馬林生02 1000
101 趙敏 04
A. select count(*) from emp
B. select count(distinct 部門號) from emp
C. select count(*) from emp group by 雇員號
D. select count(工資) from emp
17. 下面那一項不是SELECT語句對數據的操作:( D )
A. 投影 B. 聯接 C. 並 D. 級聯
18. 下面關於SQL數據查詢操作描述正確的有:( ABD )
A. 投影操作是選擇對表中的哪些列進行查詢操作
B. 使用DISTINCT關鍵字可以過濾查詢中重復的記錄
C. 在模糊查詢中,通配符「%」表示匹配單個字元,而「_」表示匹配零個或多個字元
D. 在MySQL中使用LIMIT關鍵字限制從資料庫中返回記錄的行數
19. 在SQL語言中,條件「BETWEEN 20 AND 30」表示年齡在20到30之間,且( A )。
A. 包括20歲和30歲 B. 不包括20歲和30歲
C. 包括20歲,不包括30歲 D. 不包括20歲,包括30歲
20. SQL語言中,刪除EMP表中全部數據的命令正確的是( C )。
A. delete * from emp B. drop table emp
C. truncate table emp D. 沒有正確答案
21. 有關索引的說法錯誤的是( AD )
A. 索引的目的是為增加數據操作的速度
B. 索引是資料庫內部使用的對象
C. 索引建立得太多,會降低數據增加刪除修改速度
D. 只能為一個欄位建立索引
22. 下列哪個關鍵字在Select語句中表示所有列( A )
A. * B. ALL C. DESC D. DISTINCT
23. 在表中設置外鍵實現的是哪一類數據完整性( B )
A. 實體完整性 B. 引用完整性
C. 用戶定義的完整性 D. 實體完整性、引用完整性和用戶定義的完整性
24. 下面正確表示Employees表中有多少非NULL的Region列的SQL語句是( B )
A. SELECT count(* ) from Employees
B. SELECT count(ALL Region) from Employees
C. SELECT count(Distinct Region) from Employees
D. SELECT sum(ALL Region) from Employees
25. 下面可以通過聚合函數的結果來過濾查詢結果集的SQL子句是( C )
A. WHERE子句 B. GROUP BY子句
C. HAVING 子句 D. ORDER BY子句
26. t_score(stu_id,sub_id,score),即成績表(學號,科目編號,成績)。學生如果某科沒有考試,則該科成績錄入null。能夠獲取各位學生的平均成績的選項是( A )
A. select avg(nvl(socre,0)) from score group by stu_id
B. select stu_id,avg(sorce) from score
C. select stu_id,avg(score) from score
D. select stu_id,sum(score)/count(score) from score
27. 若要求查找S表中,姓名的第一個字為'王'的學生學號和姓名。下面列出的SQL語句中,哪個是正確的( B )
A. SELECT Sno,SNAME FROM S WHERE SNAME=′王%′
B. SELECT Sno,SNAME FROM S WHERE SNAME LIKE′王%′
C. SELECT Sno,SNAME FROM S WHERE SNAME LIKE′王_′
D. 全部
28. 若要求「查詢選修了3門以上課程的學生的學生號」,正確的SQL語句是( B )
A. SELECT Sno FROM SC GROUP BY Sno WHERE COUNT(*)> 3
B. SELECT Sno FROM SC GROUP BY Sno HAVING( COUNT(*)> 3)
C. SELECT Sno FROM SC ORDER BY Sno WHERE COUNT(*)> 3
D. SELECT Sno FROM SC ORDER BY Sno HAVING COUNT(*)>= 3
29. 對下面的查詢語句描述正確的是( D )
Select StudentID,Name,
(select count(*) from StudentExam
where StudentExam.StudentID = Student.StudentID) as ExamsTaken
from Student
order by ExamsTaken desc
A. 從Student表中查找StudentID和Name,並按照升序排列
B. 從Student表中查找StudentID和Name,並按照降序排列
C. 從Student表中查找StudentID、Name和考試次數
D. 從Student表中查找StudentID、Name,並從StudentExam表中查找與StudentID一致的學生考試次數,並按照降序排列
30. 下面題基於學生-課程資料庫中的三個基本表:
學生信息表:s(sno, sname, sex, age, dept) 主鍵為sno
課程信息表:c(cno, cname, teacher) 主鍵為cno
學生選課信息表:sc(sno, cno, grade) 主鍵為(sno, cno)
「從學生選課信息表中找出無成績的學生信息」的SQL語句是( C d )
A.
SELECT * FROM sc WHERE grade=NULL
B.
SELECT * FROM sc WHERE grade IS 『 』
C.
SELECT * FROM sc WHERE grade IS NULL
D.
SELECT * FROM sc WHERE grade =『 』
31. 當子查詢返回多行時,可以採用的解決辦法是( C )。
A. 使用聚合函數 B. Where條件判斷
C. 使用IN運算符 D. 使用Group by進行分組
32. 下面關於在子查詢中使用運算符描述不正確的是( D )。
A. 使用IN運算符用於查找欄位值屬於某一組值的行
B. 使用Exists運算符用於測試子查詢是否返回行,如果返回其值就為真
C. 使用ALL運算符用於測試子查詢結果集的所有行是否滿足指定的條件
D. 使用Any運算符用於測試子查詢結果集中的一行或多行不滿足指定的條件
33. 下面關於組合查詢描述不正確的是( D )。
A. 從一個表中獲取的數據必須和其它表中的數據具有相同的列數
B. 兩個表中相對應的列必須具有相同的數據類型
C. UNION的結果集列名與第一個SELECT語句的結果集中的列名相同
D. UNION的結果集列名與第二個SELECT語句的結果集中的列名相同
E. UNION ALL運算符返回每個數據集的所有成員
34. 下面關於聯接的描述正確的是( A )。
A. 內聯接使用比較運算符根據每個表共有的列值來匹配兩個表中的行
B. 左外聯接結果集包含從右邊的表返回的所有行
C. 右外聯接結果集包含從左邊的表返回的所有行
D. 全外聯接返回左表和右表中的所有匹配的行
35. 下面關於資料庫設計過程正確的順序描述是( C )。
A. 需求收集和分析、邏輯設計、物理設計、概念設計
B. 概念設計、需求收集和分析、邏輯設計、物理設計
C. 需求收集和分析、概念設計、邏輯設計、物理設計
D. 需求收集和分析、概念設計、物理設計、邏輯設計
36. ER圖屬於下面哪一種資料庫設計模型( B )。
A. 物理數據模型
B. 概念數據模型
C. 邏輯數據模型
D. 需求模型
37. 非主鍵必須完全依賴於主鍵列,這屬於下列範式的內容( BC )
A. 1NF B. 2NF C. 3NF D. 都沒有的
38. 如果一個欄位的數據必須來源另一個表的主鍵,那麼要在這個欄位上建立( B )。
A. PK(主鍵) B. FK(外鍵) C. UK(唯一鍵) D. 復合主鍵
39. 根據三個範式的定義,下面哪個選項的設計是正確的( C )
職工編號 姓名 工種 車間 車間主任
1001 李寧 車工 一車間 周傑
1002 王海 銑工 一車間 周傑
1003 趙亮 鉗工 二車間 吳明
1001 李寧 鉗工 二車間 吳明
A. 員工表、工種表、車間表
B. 員工表、工種表、車間表、車間主任表
C. 員工表、工種表、車間表、員工工種表、員工車間表
D. 以上設計均不正確
40. 下列說法中,哪些是正確的( BD )
A. RDBMS是資料庫管理系統的簡稱
B. 各行記錄都不能重復,是第二範式要求的
C. 在資料庫設計中一定要滿足第三範式
D. 索引越多,查詢越快,數據更新越慢
6. 資料庫運維工程師需要掌握哪些技能
其次對於操作系統和小機要求能夠達到比較熟練的使用水平,相對來說,目前在大中型企事業單位使用較多的是Linux操作系統,一般的小企業使用的是WIN系統。小機方面掌握IBM的小機使用或者是HP的小機使用技能即可。此外,作為一名專業的資料庫運維工程師還需要對於存儲技術、網路技術、集群技術等有一定的了解。 其原因在於資料庫作為一個基礎的層面,牽扯到各個方面的應用,一個系統出現問題的時候往往並不是資料庫發生了問題,而是其他的應用出現了問題,這個時候就需要進行專業的診斷,如果工程師沒有一個比較全面的技術掌握就可能不能很快速地處理問題,進而使工作開展困難。
7. 求恆生電子 軟體運維工程師,資料庫筆試題!!!
1、寫C語言的拷貝函數,要求復制字元串,並且將復制後的字元串逆序
比如form中是1234, 則to中是4321
void strcyp(char * to,const char * form)
不能使用庫函數 不能定義其他的變數
最佳答案
int main()
{
char a[10],b[10];
printf("請輸入a字元可以隨意輸入小於10個字元")
/*這里不知道為什麼查過10個就前面一部分對
且a字元串就沒有值了你可以自己事實*/
scanf("%s",a);
printf("a字元串:%s\n",a);
turnto(a,b);
printf("b字元串:%s\n",b);
printf("a字元串:%s\n",a);
return 0;
}
void turnto(char *q,char *p)
{
int length,i,j;
for(length=0;;length++)
{
if(q[length]=='\0')
break;
}
j=length-1;
for(i=0;i
{
// *(p+i)=*(q+(j--));
p[i]=q[j--];
}
// *(p+i)='\0';
p[i]='\0';
}
第一個編程題:
827328929 數字反轉,不能使用類庫,不能使用數組。
第二個編程題:
public int[] getNum(aArray[] ,bArray[]){ }
求出數組aArray[] ,和bArray[]兩個數組的交集,交集放在數組中返回。
資料庫題目:
學生表(student){學好,姓名,年齡,所在系}
課程表(course){課程編號,課程名,學分}
關系表(sc){學號,課程編號,成績}
1、查詢出選修了「資料庫」的學生姓名。
2、查詢平均成績大於85分的學生姓名和平均成績(悲劇的沒有寫出來)
3、添加一個課程信息(「Java」,』1001『,2)
4、添加一個唯一索引
5、在學生表中添加身份證列,大小18,非空
8. 國開資料庫運維形考需要交紙質作業嗎
摘要 您好,很高興為您解答!