SQL Server 数据库操作实验:创建表、插入数据、创建视图

一、创建表格

使用以下代码在 SQL Server 中创建三个表格:PAPERCUSTOMERCP

CREATE TABLE PAPER
(
pno char(6) PRIMARY KEY,
pna char(10),
ppr float
);

CREATE TABLE CUSTOMER
(
cno char(8) PRIMARY KEY,
cna char(10),
adr char(20)
);

CREATE TABLE CP
(
cno char(8),
pno char(6),
num int,
PRIMARY KEY(pno,cno),
FOREIGN KEY (pno) REFERENCES PAPER(pno),
FOREIGN KEY (cno) REFERENCES CUSTOMER(cno)
);

二、插入数据

使用以下代码为创建的表格插入数据:

-- 插入 PAPER 表数据
insert into paper(pno,pna,ppr)
   values('000001','人民日报',12.5) ;
   insert into paper(pno,pna,ppr)
   values('000002','解放军报',14.5) ;
insert into paper(pno,pna,ppr)
   values('000003','光明日报',10.5) ;
insert into paper(pno,pna,ppr)
   values('000004','青年报',11.5) ;
insert into paper(pno,pna,ppr)
   values('000005','扬子晚报',18.5) ;

-- 插入 CUSTOMER 表数据
insert into customer(cno,cna,adr)
   values('10000001','李涛','无锡市解放东路123号') ;
insert into customer(cno,cna,adr)
   values('10000002','钱金浩','无锡市人民西路234号') ;
insert into customer(cno,cna,adr)
   values('10000003','邓杰','无锡市惠河路270号') ;
insert into customer(cno,cna,adr)
   values('10000004','朱海红','无锡市中山东路432号') ;
insert into customer(cno,cna,adr)
   values('10000005','欧阳阳文','无锡市中山东路532号') ;

-- 插入 CP 表数据
insert into cp(cno,pno,num)
   values('10000001','000001',2) ;
insert into cp(cno,pno,num)
   values('10000001','000005',6) ;
insert into cp(cno,pno,num)
   values('10000002','000003',2) ;

insert into cp(cno,pno,num)
   values('10000003','000003',2) ;
insert into cp(cno,pno,num)
   values('10000004','000001',1) ;
insert into cp(cno,pno,num)
   values('10000004','000005',2) ;
insert into cp(cno,pno,num)
   values('10000005','000002',1) ;
insert into cp(cno,pno,num)
   values('10000005','000005',5) ;
insert into cp(cno,pno,num)
   values('10000001','000002',4) ;
insert into cp(cno,pno,num)
   values('10000002','000001',2) ;
insert into cp(cno,pno,num)
   values('10000002','000005',2) ;
insert into cp(cno,pno,num)
   values('10000003','000004',4) ;
insert into cp(cno,pno,num)
   values('10000004','000003',3) ;
insert into cp(cno,pno,num)
   values('10000005','000003',4) ;
insert into cp(cno,pno,num)
   values('10000005','000004',3) ;
insert into cp(cno,pno,num)
   values('10000005','000001',4) ;

三、创建视图

为上述表创建一个视图 C_P_N,包含顾客编号,顾客名称,报纸编号,报纸名称,订阅份数这些信息:

CREATE VIEW C_P_N AS
SELECT C.cno, C.cna, P.pno, P.pna, CP.num
FROM CUSTOMER C
JOIN CP ON C.cno = CP.cno
JOIN PAPER P ON CP.pno = P.pno;

四、操作视图

  1. 修改视图 修改已创建的视图 C_P_N 使其含有报纸单价信息:

    ALTER VIEW C_P_N AS
    SELECT C.cno, C.cna, P.pno, P.pna, CP.num, P.ppr AS 单价
    FROM CUSTOMER C
    JOIN CP ON C.cno = CP.cno
    JOIN PAPER P ON CP.pno = P.pno;
    
  2. 更新数据 通过视图 C_P_N 对数据进行更新,比如修改顾客编号为 '10000001' 的顾客对报纸编号为 '000001' 的报纸的订阅份数为 5:

    UPDATE C_P_N
    SET num = 5
    WHERE cno = '10000001' AND pno = '000001';
    
  3. 删除视图 删除视图 C_P_N

    DROP VIEW C_P_N;
    

五、实验心得

在本次实验中,我学习了如何在 SQL Server 中创建表格、插入数据以及创建视图。具体来说,我学习了如何使用 CREATE TABLE 语句创建表格,如何使用 INSERT INTO 语句插入数据,以及如何使用 CREATE VIEW 语句创建视图。同时,我还学习了如何使用 PRIMARY KEY 约束来创建主键,如何使用 FOREIGN KEY 约束来创建外键,以及如何使用 JOIN 语句查询多个表格的数据。

在实验的过程中,我遇到了一些问题,比如在创建视图时如何同时包含表格的多个字段。通过查阅相关资料和向老师请教,我逐渐掌握了解决方法,并且成功地创建了视图。

通过本次实验,我深入了解了 SQL Server 数据库的基本操作,为以后的数据库应用开发打下了坚实的基础。同时,我也意识到了在实践中遇到问题时及时向他人请教的重要性,这能够帮助我们更快地解决问题,提高工作效率。

SQL Server 数据库操作实验:创建表、插入数据、创建视图

原文地址: http://www.cveoy.top/t/topic/mOIy 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录