1. 程式人生 > 實用技巧 >sy3檢視的操作與管理

sy3檢視的操作與管理

學生表

create database Student
create table Student
(Sno varchar(20) primary key,
 Sname varchar(10),
 age char(4),
 sex char(2),
 Sdept varchar(20)
)
insert 
into Student(Sno,Sname,age,sex,Sdept)
values('11233','lee',18,'男','CS')
insert 
into Student(Sno,Sname,age,sex,Sdept)
values('11203','wfw',19,'男','CS')
insert 
into Student(Sno,Sname,age,sex,Sdept)
values('11240','ly',20,'男','CS')
Sno Sname age sex Sdept
11233 lee 18 CS
11203 wfw 19 CS
11240 ly 20 CS

選課表

create table SC
(Sno varchar(20) primary key,
 Cno varchar(20),
 grade int
)
insert 
into SC(Sno,Cno,grade)
values('11233','C01',70)
insert 
into SC(Sno,Cno,grade)
values('11203','C01',80)
insert 
into SC(Sno,Cno,grade)
values('11240','C02',90)
Sno Cno grade
11233 C01 70
11203 C01 80
11240 C02 90

課程表

create table C
(Cno varchar(20),
 Cname varchar(20),
 Teacher varchar(10)
)
insert 
into C(Cno,Cname,Teacher)
values('C01','DB','sun')
insert 
into C(Cno,Cname,Teacher)
values('C01','DB','sun')
insert 
into C(Cno,Cname,Teacher)
values('C02','JAVA','sun')

檢視操作

--建立檢視
go
create view cs_Student
as 
select Sno,Sname,sex,age
from Student
where Sdept='CS'
go
--重新命名試圖
sp_rename cs_Student,CS
go
--刪除檢視
drop view CS

練習

--1.建立計算機系學生檢視 CS_Student.
go
create view CS_Student
as
select Student.Sno,Sname,Sdept,SC.Cno,Cname,grade
from Student,SC,C
where Sdept='CS' and Student.Sno=SC.Sno 
go
--2. 建立計算機系選修了 1 號課程的學生的檢視 CS_S1。(注:使用上題建立的檢視CS_Student。)
create view  CS_S1
as
select Sno,Sname,Sdept,Cno
from CS_Student
where Sdept='CS' and Cno='C01'
go
--3.刪除檢視 CS_S1。
drop view CS_S1
go
--4.在計算機系學生檢視 CS_Student 中找出選修了“資料庫”課程且成績在 90分以上的學生。
select Sno,Sname,grade,Cname
from CS_Student
where Sdept='CS' and Cname='DB' and grade>89
go
--5.向計算機系學生檢視 CS_Student 中插入一個新生記錄,其中學號為 95030,姓名為張三,年齡為 20,男生。
insert 
into CS_Student(Sno,Sname,age,sex)
values('95030','張三',20,'男')
go
--6.在計算機系學生檢視 CS_Student 中,將學號為 95030 的學生姓名改為“李四”。
update CS_Student
set Sname='李四'
where Sno='95030'
go
--7.刪除計算機系學生檢視 CS_Student 中學號為 95030 的學生記錄。
delete
from CS_Student
where Sno='95030'