第1关:表的创建和使用
编程要求
本次编程任务是:
在右侧编辑区 create table 下的 Begin-End 区域补全代码,创建 Student 、 Course 和 Score 三个表;
在右侧编辑区 insert 下的 Begin-End 区域补全代码,向 Score 表中插入下面给出的数据;
在右侧编辑区 alt student table 下的 Begin-End 区域补全代码,修改 Student 表结构,新增一列 addr 用于描述地址信息,并设置数据类型以及长度为 varchar(256),;
在右侧编辑区 del score table 下的 Begin-End 区域补全代码,删除 Score 表。
USE studentdb
go
SET NOCOUNT ON
go
--********** create table **********--
--********** Begin **********--
create table Student(
sno VARCHAR(50),
name VARCHAR(50),
sex VARCHAR(10),
birthday DATE,
discipline VARCHAR(50),
school VARCHAR(100)
)
CREATE TABLE Course(
cno VARCHAR(50),
cname VARCHAR(50),
description VARCHAR(256),
credit FLOAT,
cinstitution VARCHAR(128)
);
CREATE TABLE Score(
sno VARCHAR(50),
cno VARCHAR(50),
grade FLOAT
);
--********** End **********--
go
select name, length, COLLATION from syscolumns where id=object_Id('student')
go
select name, length, COLLATION from syscolumns where id=object_Id('course')
go
select name, length, COLLATION from syscolumns where id=object_Id('score')
go
--********** insert **********--
--********** Begin **********--
INSERT INTO Score(sno, cno, grade) VALUES
('09011101', '101', 89),
('09011101', '102', 78);
--********** End **********--
select * from score
go
--********** alt student table **********--
--********** Begin **********--
ALTER TABLE Student ADD addr VARCHAR(256);
--********** End **********--
go
select name, length, COLLATION from syscolumns where id=object_Id('student')
go
--********** del score table **********--
--********** Begin **********--
drop table Score;
--********** End **********--
go
GO
IF NOT EXISTS(Select 1 From Sysobjects Where Name='score') --查询表是否存在
BEGIN
PRINT 'NOT EXISTS TABLE score'
END
GO
第2关:数据库视图的创建和使用
编程要求
本次编程任务是,在右侧编辑区 create score_view_cdept 下的 Begin-End 区域补全代码,创建学生的成绩单视图,包括学号 sno 、姓名 name 、课程名 cname 和成绩 grade 字段。
USE studentdb
go
SET NOCOUNT ON
go
--********** create score_view_cdept **********--
--********** Begin **********--
create view score_view_cdept
as
select Student.sno,name,cname,grade
from Student,Course,Score
where Student.sno=Score.sno
and Course.cno=Score.cno;
--********** End **********--
go