下列各题中使用如下数据袁。
“学生”表:学号C(8),姓名C(8),性别C(2),系名(6)
“课程”表:课程编号C(4),课程名称C(12),开课系名C(10)
“成绩”表:学号C(8),课程编号C(4),成绩N(6,2)
在已打开数据库的情况下,利用SQL派生一个包含姓名、课程名称和成绩字段的xsview视图,正确的语句是( )。
A.CREATE VIEW xsview AS
SELECT学生.姓名,课程.课程名称,成绩.成绩
FROM学生INNER JOIN成绩
INNER JOIN课程
WHERE成绩.课程编号=课程.课程编号
AND学生.学号=成绩.学号
B.CREATE VIEW xsview AS
(SELECT学生.姓名,课程.课程名称,成绩.成绩
FROM学生INNERJOIN成绩
INNER JOIN课程
ON成绩.课程编号=课程.课程编号
ON学生.学号=成绩.学号)
C.CREATE VIEW xsview AS
SELECT学生.姓名,课程.课程名称,成绩.成绩
WHERE学生INNER JOIN成绩
INNER JOIN课程
ON成绩.课程编号=课程.课程编号
ON学生.学号=成绩.学号
D.CREATE VIEW xsview AS
SELECT学生.姓名,课程.课程名称,成绩.成绩
FROM学生INNER JOIN成绩
INNER JOIN课程
ON成绩.课程编号=课程.课程编号
ON学生.学号=成绩.学号
参考答案:D
解析: 利用SQL命令可以定义直接建立视图,命令格式如下:
CREATE VIEW视图名AS;
SELECT语句
本题中要注意的是在定义视图时,SELECT语句部分不需要用括号括起来,在进行超连接查询时,可使用的SQL命令格式如下:
SELECT……
FROM<数据库表1>INNER JOIN<数据库表2>
ON<连接条件>
WHERE……
其中,INNER JOIN等价于JOIN,为普通的连接,在Visual FoxPro中称为内部连接;ON<连接条件>指定两个进行表连接的条件字段。
注意:连接类型在FROM子句中给出,并不是在WHERE子句中,连接条件在ON子句中给出。