针对SPJ数据库,完成如下操作,并给出操作语句及执行结果: ① 创建一个“三建”工程项目供应零件情况的视图,包括供应商代码、供应商名称、零件代码、零件名称、供应数量。 ② 查询“三建”工程项目使用的各种零件名称及其数量。 ③ 查询供应商S1给三建工程供应零件的情况。 ④ 分别对视图进行增删改操作,如果操作不成功请分析原因。
时间: 2024-03-07 09:50:19 浏览: 86
假设以下是SPJ数据库的表结构:
供应商表(Supplier):供应商代码(S#),供应商名称(Sname),供应商地址(Saddress)
零件表(Part):零件代码(P#),零件名称(Pname),零件颜色(Color),重量(Weight),供应商代码(S#)
工程表(Project):工程代码(J#),工程名称(Jname),工程地点(Jaddress)
供应表(SPJ):供应商代码(S#),零件代码(P#),工程代码(J#),供应数量(QTY)
① 创建一个“三建”工程项目供应零件情况的视图,包括供应商代码、供应商名称、零件代码、零件名称、供应数量。
```
CREATE VIEW project_part_supplier_view AS
SELECT s.S#, s.Sname, p.P#, p.Pname, sp.QTY
FROM Supplier s, Part p, SPJ sp, Project j
WHERE s.S# = p.S# AND p.P# = sp.P# AND sp.J# = j.J# AND j.Jname = '三建';
```
② 查询“三建”工程项目使用的各种零件名称及其数量。
```
SELECT p.Pname, SUM(sp.QTY) AS total_qty
FROM Part p, SPJ sp, Project j
WHERE p.P# = sp.P# AND sp.J# = j.J# AND j.Jname = '三建'
GROUP BY p.Pname;
```
③ 查询供应商S1给三建工程供应零件的情况。
```
SELECT p.Pname, sp.QTY
FROM Part p, SPJ sp, Project j
WHERE p.P# = sp.P# AND sp.J# = j.J# AND j.Jname = '三建' AND sp.S# = 'S1';
```
④ 分别对视图进行增删改操作,如果操作不成功请分析原因。
```
-- 插入记录
INSERT INTO project_part_supplier_view (S#, Sname, P#, Pname, QTY)
VALUES ('S4', '供应商4', 'P5', '零件5', 100);
-- 执行失败,视图只能进行查询操作,无法进行插入操作
-- 修改记录
UPDATE project_part_supplier_view
SET QTY = 200
WHERE S# = 'S2' AND P# = 'P3';
-- 执行失败,视图是由多张表联接而成的,无法进行修改操作
-- 删除记录
DELETE FROM project_part_supplier_view
WHERE S# = 'S3' AND P# = 'P4';
-- 执行失败,视图只能进行查询操作,无法进行删除操作
```
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)