1) 在SQL Server 中,為數據庫表建立索引能夠( C )。
A. 防止非法的刪除操作
B. 防止非法的插入操作
C. 提高查詢性能
D. 節約數據庫的磁盤空間
解析:索引的作用是通過使用索引,大大提高數據庫的檢索速度,改善數據庫性能
2) 在SQL SERVER中,創建一個表使用( C)語句。
A. INSERT
B. DROP
C. CREATE
D. ALERT
解析:A :insert 插入數據。 B: drop 進行刪除操作 D:alter 添加約束
3) 在SQL SERVER中,下面關于視圖說法錯誤的是(C )。
A. 對查詢執行的大多數操作也可以在視圖上進行
B. 使用視圖可以增加數據庫的安全性
C. 不能利用視圖增加,刪除,修改數據庫中的數據
D. 視圖使用戶更靈活的訪問所需要的數據
解析:對視圖進行增刪改操作。(答題的話可以,面試不可以)
4) 在數據庫設計中,用E-R圖來描述信息結構但不涉及信息在計算機中的表示,它是數據庫設計的( B )階段。
A. 需求分析
B. 概要設計
C. 邏輯設計
D. 物理設計
解析:
A:分析客戶的業務和數據處理需求
B:概要設計 繪制數據庫的E-R圖,用于在項目團隊內部、設計人員和客戶之間進行溝通,確認需求信息的正確性和完整性
C:利用數據模型進行概念數據庫的模式設計
D:將一個給定邏輯結構實施到具體的環境中時,邏輯數據模型要選取一個具體的工作環境,這個工作環境提供了數據存儲結構與存取方法,這個過程就是數據庫的物理設計。
5) 在SQL Server 數據庫中,如果強制要求grades表中的學員必須是Students表中存在的學員,以下描述正確的是( A )。
A. 在grades表中創建外鍵約束
B. 在grades表中創建檢查約束
C. 在grades表中創建唯一約束
D. 在grades表中創建默認約束
解析:
A: 外鍵約束 用于在兩表之間建立關系,需要指定引用主表的哪一列
B:檢查約束 某列的取值范圍限制、格式限制等
C:唯一約束 要求該列的值必須唯一,允許為空 但只能出現一個空值
D:默認約束 某列的默認值
6) 在SQL Server 數據庫中,下面的T-SQL語句段執行第三句時出現錯誤,數據庫中的內容修改情況是(C )。
BEGIN TRANSACTION
update Account set balance=7800 where id=1
update Account set balance=9000 where id=1
IF @@error <> 0
ROLLBACK TRANSACTION
ELSE
COMMIT TRANSACTION
A. Account表中id為1的記錄中balance字段的值被修改為7800
B. Account表中id為1的記錄中balance字段的值被修改為9000
C. Account表中id為1的記錄中balance字段的值不變
D. 不可能發生這種情況
解析:rollback tran 回滾事務,那么在begin transaction 語句之后的所有更新數據都回滾到初始狀態
7) 在SQL Server 數據庫中,有關下列T-SQL語句的功能,說法正確的是(C )。
DECLARE @I int, @J int
SET @I=0
WHILE (@I < 2) //循環兩次
BEGIN
SELECT @J=COUNT(*) FROM stuMarks WHERE writtenExam<60
IF(@J>0)
UPDATE stuMarks SET writtenExam=writtenExam+5 WHERE writtenExam<60 //小于60分加5分
ELSE
BREAK
SET @I = @I + 1 //改變循環變量 @I為1繼續再循環一次!
END
SELECT stuNo,成績=CASE
WHEN writtenExam<60 THEN '不及格'
ELSE '及格'
END
FROM stuMarks
A. 給不及格的學員反復提5分直到通過為止,最后展示所有學員是否及格的情況信息
B. 給不及格的學員提10分,最后展示所有學員是否及格的情況信息
C. 給不及格的學員提5分,提分后仍不及格的學員再提5分,最后展示所有學員是否及格的情況信息
D. 給不及格的學員提5分,最后展示所有學員是否及格的情況信息
8) 在SQL Server 數據庫中,下面調用存儲過程的語句錯誤的是( B)。
A. EXEC proc_stu @sum OUTPUT,64,78
B. EXEC proc_stu @sum OUTPUT,@total output,78
C. EXEC proc_stu @sum OUTPUT,604
D. EXEC Calculate @sum OUTPUT,@total output
9) 在SQL SERVER中,下面關于子查詢的說法你認為正確的是( C )。
A. 應用簡單子查詢的SQL語句的執行效率比采用SQL變量的實現方案要低
B. 帶子查詢的查詢執行順序是,先執行父查詢,再執行子查詢
C. 表連接一般都可以用子查詢替換,但有的子查詢不能用表連接替換
D. 如果一個子查詢語句一次返回二個字段的值,那么父查詢的where子句中應該使用NOT EXISTS關鍵字
10) 在SQL SERVER中,按以下要求創建學員表正確的SQL語句是(D )。
學員表(stuTable)的要求是:學號為5位數字,自動編號;姓名最多為4個漢字,身份證號碼最多為18位數字。
A. CREATE TABLE stuTable (
ID NUMERIC(6,0) NOT NULL,
Name VARCHAR(4),
Card INT
)
B. CREATE TABLE stuTable
(
ID INT IDENTITY(10000,1),
Name VARCHAR(4),
Card DECIMAL(18,0)
)
C. IF EXISTS(SELECT * FROM sysobjects WHERE name=' stuTable ')
DROP TABLE stuTable
GO
CREATE TABLE stuTable
(
ID NUMERIC(4,0) NOT NULL,
Name VARCHAR(4),
Card INT
)
D. IF EXISTS(SELECT * FROM sysobjects WHERE name=' stuTable ')
DROP TABLE stuTable
GO
CREATE TABLE stuTable
(
ID INT IDENTITY(10000,1),
Name VARCHAR(8),
Card NUMERIC(18,0)
)
解析:D: identity:自增 numberic(18,0)指身份證號碼最多為18位數字,varchar(8) 姓名最多為4個漢字 條件滿足
11) 在SQL SERVER中,聲明并創建以下存儲過程,正確調用該存儲過程的的語句是( BC)。
CREATE PROCEDURE PRO
@passNum int OUTPUT,
@passPoint int=60
AS
Select @passNum=count(*) From stuTable Where point >@passPoint
GO
A. Declare @sum int
EXEC PRO @passNum,70
B. Declare @sum int
EXEC PRO @sum output,70
C. Declare @sum int
EXEC PRO @sum output
D. EXEC PRO 70
解析:A:output表明參數是輸出參數 D:未聲明局部變量
12) 下面描述的四個階段中,不是數據庫設計過程中經歷的階段是( D )。
A. 需求分析階段
B. 概要設計階段
C. 詳細設計階段
D. 代碼設計階段
解析: 代碼設計階段不屬于數據庫設計過程中經歷的階段
13) 在SQL Server 中,對IN語句取反的方法是,在IN前面添加( B)。
A. NONE
B. NOT
C. !
D. NO
解析:對in語句進行取反的方法是not in
14) 在SQL Server 數據庫中,以下對變量的定義錯誤的是(D )。
A. DECLARE @username varchar(10)
B. DECLARE @RowCount varchar(30)
C. DECLARE @@username varchar(10)
D. DECLARE @@RowCount varchar(30)
15) 在SQL Server中,繪制E-R圖時一般使用( B )表示實體的屬性。
A. 矩形
B. 橢圓
C. 菱形
D. 三角形
解析:A:實體---矩形 C:聯系--菱形
16) 在SQL SERVER中,運行下列語句,輸出結果是( B )。
Create proc proc_Search
@myStuno varchar(8) is null
as
if @myStuno = null
begin
print '你忘記了傳遞學號'
return
end
Select * from stuinfo where stuno=@myStuno
go
exec proc_Search
A. 你忘記了傳遞學號
B. 編譯錯誤
C. 顯示空的記錄
D. 調用存儲過程proc_Search出錯
解析:未聲明變量 @myStuno
17) 下面關于SQL Server中變量的操作正確的是(AD )。
A. DECLARE @name varchar(8)
SET @name='lkl'
print '姓名是'+@name
B. DECLARE name varchar(8)
SET name='lkl'
print '姓名是'+name
C. print @@VERSION AS '版本', @@SERVERNAME AS '服務器'
D. SELECT @@VERSION AS '版本', @@SERVERNAME AS '服務器'
解析:B:name應該為局部變量 缺少@符號 C:語法錯誤
18) 下面選項中關于在SQL語句中使用的邏輯控制語句的說法正確的是(A )。
A. 在IF-ELSE 條件語句中,IF為必選,而ELSE為可選
B. 在IF-ELSE 條件語句中,語句塊使用{ }括起來
C. 在CASE多分支語句中不可以出現ELSE分支
D. 在WHILE循環語句中條件為false,就重復執行循環語句
解析:
B:在SQL中 if-else條件語句中 語句塊使用begin-end括起來
C:case多分支語句中可出現else 作為條件
19) 已知dept表有部門編號字段deptno、部門名稱字段dname,員工表emp具有員工編號字段empno、員工姓名字段ename、電話字段phone和所屬部門編號字段deptno,該字段參考dept表的deptno字段,要使用SQL語句查詢 “研發部”部門所有員工的編號和姓名信息,下面選項中正確的是(B )。
A. SELECT empno,ename FROM emp
WHERE empno=(SELECT empno FROM dept WHERE dname="研發部")
B. SELECT empno,ename FROM emp
WHERE deptno=(SELECT deptno FROM dept WHERE dname='研發部')
C. SELECT empno,ename FROM emp
WHERE deptno=(SELECT * FROM dept WHERE dname='研發部')
D. SELECT empno,ename FROM dept
WHERE deptno=(SELECT deptno FROM emp WHERE dname="研發部")
解析: 查詢 “研發部”部門所有員工的編號和姓名信息 即排除AC 查詢的信息是來自于部門表 排除D
20) 在SQL Server中,下面關于視圖的描述,說法正確的是( AD)。
A. 使用視圖可以篩選原始物理表中的數據,增加了數據訪問的安全性
B. 視圖是一種虛擬表,數據只能來自一個原始物理表
C. CREATE VIEW語句中可以包含UPDATE語句
D. 為了安全起見,一般只對視圖執行查詢操作,不推薦在視圖上執行修改操作
解析:
B: 視圖是一種虛擬表。通常是作為來自一個或多個表的行或列的子集創建的
C: CREATE VIEW語句中不可包含UPDATE語句
21) 在SQL Server中,創建如下存儲過程:
create proc stu_exam
@writtenExam int=null
as
if @writtenExam is null
begin
print '請輸入筆試成績及格線'
return
end
select * from student where stu_id in
(select stu_id from stu_marks
where writtenExam>@writtenExam)
GO
下列選項正確的是( C )。
A. 執行EXEC stu_exam語句,控制臺顯示所有筆試成績及格的學生信息記錄集
B. 存儲過程(stu_exam)代碼存在語法錯誤
C. 執行EXEC stu_exam語句,控制臺顯示“請輸入筆試成績及格線”
D. 執行EXEC stu_exam 75語句,控制臺顯示“請輸入筆試成績及格線”
解析:有IF條件進行過濾,若果沒有輸出筆試成績的話,將輸出提示。
22) 下列選項中不屬于SQL Server的邏輯控制語句的是( B)。
A. IF-ELSE語句
B. FOR循環語句
C. CASE子句
D. WHILE循環語句
解析:SQL Server的邏輯控制語句包括 IF-ELSE語句、 CASE子句、WHILE循環語句三種
23) 在SQL SERVER中,關于聚集索引和非聚集索引的描述錯誤的是(B )。
A. 一個表可以有多個非聚集索引,但只能有一個聚集索引
B. 非聚集索引的值順序與數據表中記錄的物理順序完全相同
C. 在建立聚集索引的列上不允許有重復的值
D. 使用聚集索引查詢的速度要比非聚集索引速度快
解析:聚集索引和表中記錄的物理順序一致 即B選項表述錯誤
24) 在SQL SERVER中,關于系統存儲過程以下說法錯誤的是( D)。
A. 系統存儲過程提供了管理數據庫和更新表的機制
B. 所有系統存儲過程都以sp_開頭
C. 所有系統存儲過程都存放在master數據庫中
D. 用戶不能使用系統存儲過程更新系統表,只能查詢系統表
25) 在SQL Server 數據庫中,從product表里查詢出price(價格)高于pName(產品名稱)為“一次性紙杯”所有記錄中最高價格的產品的查詢語句為( D )。
A. SELECT * FROM product WHERE max(price)>'一次性紙杯'
B. SELECT * FROM product WHERE price>(SELECT max(*) FROM product WHERE pName= '一次性紙杯')
C. SELECT * FROM product WHERE EXISTS pName='一次性紙杯'
D. SELECT * FROM product WHERE price>(SELECT max(price) FROM product WHERE pName='一次性紙杯')
解析:
AC:條件不明確
B:查詢的是最高價格的產品,并非所有的。因此錯誤
文章列表