spj資料庫
1. 為什麼無法重新創建表
可能沒有被刪!
你引入的資料庫是否正確!
引入正確的資料庫!
然後執行
drop table 表
如果命令提示成功!那麼你的表沒有刪!
如果提示找不到!
那麼你重新啟動下資料庫!或者刷新下!
2. 資料庫問題
(1) select SNO '供應商號' from SPJ where JNO = 'J1'
(2) select J.JNAME from
SPJ inner join P on SPJ.SNO = P.PNO inner join J on SPJ.JNO = J.JNO
where J.CITY = '上海' and P.COLOR = '紅色'
(3) select P.PNAME,COUNT(SPJ.QTY) from
SPJ inner join P on SPJ.SNO = P.PNO inner join J on SPJ.JNO = J.JNO
where J.JNO = 'J2'
group by P.PNAME
(4) select J.JNO from
SPJ inner join P on SPJ.SNO = P.PNO and P.COLOR = '紅色' inner join J on SPJ.JNO = J.JNO inner join S on SPJ.SNO = S.SNO
where S.CITY <> '天津'
(5) select P.PNO,COUNT(SPJ.QTY) 'count' from
SPJ inner join P on SPJ.SNO = P.PNO inner join J on SPJ.JNO = J.JNO
group by P.PNO
order by count desc
(6) update P set P.COLOR ='藍色' where Color = '紅色'
(7)
create view view_s
as
select * from
SPJ inner join P on SPJ.SNO = P.PNO inner join J on SPJ.JNO = J.JNO inner join S on SPJ.SNO = S.SNO
where S.SNO = 'S1'
(8) delete from SPJ where JNO ='J1'
不知對不對,僅供參考~
3. 資料庫原理難題,設有一個SPJ資料庫,包括S,P,J,SPJ四個關系模式
這是難題?
(1)
create table S
(
SNO VARCHAR(20) PRIMARY KEY,
SNAME NVARCHAR(50) NOT NULL,
STATUS INT DEFAULT(0),
SCITY NVARCHAR(20)
)
CREATE TABLE P
(
PNO VARCHAR(20) PRIMARY KEY,
PNAME NVARCHAR(50) NOT NULL,
COLOR NVARCHAR(10),
WEIGHT NUMERIC(9,2)
)
CREATE TABLE J
(
JNO VARCHAR(20) PRIMARY KEY,
JNAME NVARCHAR(50) NOT NULL,
JCITY NVARCHAR(100)
)
CREATE TABLE SPJ
(
SNO VARCHAR(20),
PNO VARCHAR(20),
JNO VARCHAR(20),
QTY NEMERIC(9,2)
)
(2)
----------------------
SELECT PNAME, COLOR, WEIGHT FROM P
(3)
--------------------
SELECT SNO FROM SPJ AS T
WHERE JNO='J2'
AND EXISTS(SELECT 1 FROM P WHERE COLOR='紅色' AND PNO=T.JNO)
(4)
-----------------
UPDATE J SET JCITY='天津' WHERE JNO='J2'
(5)
-----------------
DELETE FROM P WHERE PNO = 'P4'
4. 用sql語句定義一些關系模式組成的資料庫
create database SPJ
go
use SPJ
create table s
(
sno int not null primary key,
sname varchar(10) not null,
city varchar(10) not null
)
go
create table p
(
pno int not null primary key,
pname varchar(10) not null,
weight varchar(10) not null,
color varchar(10) not null
)
go
create table j
(
jno int not null primary key,
jname varchar(10) not null,
city varchar(10) not null
)
go
create table spj
(
sno int not null constraint s_fk foreign key references s(sno),
pno int not null constraint p_fk foreign key references p(pno),
jno int not null constraint j_fk foreign key references j(jno)
)
5. 程序題中SPJ什麼意思
Special Judge是指本題可能有多個正確的解。你的程序的答案將被一個SPJ的檢測程序檢測,以判斷你的程序是否正確。請注意:SPJ的題目一般不會判出PE,所以請確保你的程序輸出格式正確。
6. 資料庫原理難題,設有一個SPJ資料庫,包括S,P,J,SPJ四個關系模式:注意分別用關系代數和SQL語句哦
關系代數:
1)求供應工程J1零件的供應商號碼SNO:
πSno(σSno=『J1』(SPJ))
2)求供應工程J1零件P1的供應商號碼SNO:
πSno(σSno=『J1』∧Pno=『P1『(SPJ))
3)求供應工程J1零件為紅色的供應商號碼SNO:
πSno(σPno=『P1『(σCOLOR=』紅『 (P)∞SPJ))
4)求沒有使用天津供應商生產的紅色零件的工程號JNO:
πJno(SPJ)- πJNO(σcity=『天津』∧Color=『紅『 (S∞SPJ∞P)
5)求至少用了供應商S1所供應的全部零件的工程號JNO:
πJno,Pno(SPJ)÷ πPno(σSno=『S1『 (SPJ))
sql語句:
( l )求供應工程 Jl 零件的供應商號碼 SNO ;
SELECT SNO FROM SPJ WHERE JNO=』J1』
( 2 )求供應工程 Jl 零件 Pl 的供應商號碼 SNO ;
SELECT SNO FROM SPJ WHERE JNO='J1' AND PNO='P1'
( 3 )求供應工程 Jl 零件為紅色的供應商號碼 SNO ;
SELECT SNO FROM SPJ,P WHEREJNO='J1' AND SPJ.PNO=P.PNO AND COLOR='紅'
( 4 )求沒有使用天津供應商生產的紅色零件的工程號 JNO ;
SELECT JNO FROM SPJ WHERE JNO NOT IN(SELE JNO FROM SPJ,P,S WHERE S.CITY='天津' AND COLOR='紅' ANDS.SNO=SPJ.SNO AND P.PNO=SPJ.PNO)。
( 5 )求至少用了供應商 Sl 所供應的全部零件的工程號 JNO ;
由於VFP不允許子查詢嵌套太深,將查詢分為兩步
A、查詢S1供應商供應的零件號
SELECT PNO FROM SPJ WHERE SNO='S1'結果是(P1,P2)
B、查詢哪一個工程既使用P1零件又使用P2零件。
SELECT FROM SPJ WHEREPNO='P1'
AND JNO IN (SELECT JNO FROM SPJ WHERE PNO='P2')
7. 什麼是spj
s--supplier--供應商
p--part--零件
j--job--工程
spj是聯系s,p,j三個關系模式的綜合關系模式。
給你舉個典型的例子:
設有一個設有一個SPJ資料庫,包括S,P,J,SPJ四個關系模式:
S(SNO, SNAME, STATUS, CITY);
P(PNO, PNAME, COLOR, WEIGHT);
J(JNO, JNAME, CITY);
SPJ(SNO, PNO, JNO, QTY); //供應數量(QTY)
8. 作業...大家幫幫忙.設有一個SPJ 資料庫 包括S,P,I SPJ4個關系模式
費了我多少功夫啊~~~~~~~~~~~~`
1 求供應工程J1零件的供應商號碼SNO
select SNO from SPJ where JNO=J1;
2 求供應工程J1零件P1的供應商號碼SNO
select SNO from SPJ where JNO=J1 and PNO=P1;
3 求供應工程J1零件為紅色的供應商號碼SNO
select SPJ.SNO from SPJ,P where SPJ.PNO=P.PNO and JNO=J1 and P.COLOR="紅色";
4 求沒有使用天津供應商生產的紅色零件的工程號JNO
select SPJ.JNO from SPJ,S,P where SPJ.SNO=S.SNO and SPJ.PNO=P.PNO and S.SNAME!="天津" and P.COLOR="紅色";
5 求至少用了供應商S1所供應的全部零件的工程號JNO
select SPJ.JNO from SPJ,S where SPJ.SNO=S.SNO and S.SNO=S1;
6 找出所有供應商的姓名和所在城市
select SNAME,CITY from S;
7 找出所有零件的名稱,顏色,重量
select PNAME,COLOR,WEIGHT from P;
8 找出使用供應商S1所供應零件的工程代碼
select JNO from SPJ where SNO=S1;
9 找出工程項目J2使用的各種零件的名稱及其數量
select P.PNAME,SPJ.QTY from SPJ,P where SPJ.PNO=P.PNO and JNO=J2;
10 找出上海廠商供應的所有零件號碼
select SPJ.PNO from SPJ,S where SPJ.SNO=S.SNO and S.SNAME='上海';
11 找出使用上海產的零件的工程項目
select J.JNAME from SPJ,S,J where SPJ.SNO=S.SNO and SPJ.JNO=J.JNO and S.SNAME='上海';
12 找出沒有使用天津產的零件的工程號碼
select SPJ.JNO from SPJ,S where SPJ.SNO=S.SNO and S.CITY!='天津';
13 把全部紅色零件的顏色改成藍色
update P set COLOR='藍色' where COLOR='紅色'
9. sql 語句問題,考試題目。大蝦幫忙啊
--) 用SQL語句建立P表。
USE [SPJ]
GO
/****** Object: Table [dbo].[P] ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF EXISTS(SELECT * FROM SYSOBJECTS WHERE NAME = 'P')
DROP TABLE P
GO
CREATE TABLE [dbo].[P](
[PNO] [nvarchar](50) NOT NULL,
[PNAME] [nvarchar](50) NOT NULL,
[COLOR] [nvarchar](50) NOT NULL,
[WEIGHT] [int] NOT NULL
)
GO
--2)用SQL語句找出所有零件的名稱、顏色、重量。
SELECT PNAME,COLOR,WEIGHT FROM P
--3)用SQL語句把全部紅色零件的顏色改為黃色。
UPDATE P SET COLOR = 'YELLOW' WEHRE COLOR = 'RED'
--4) 用SQL語句由S5供給J4的零件P6改為由S3供應。
UPDATE SPJ SET SNO = 'S3' WEHRE PNO = 'P6' AND JNO = 'J4' AND SNO = 'S5'
10. 創建資料庫db_sc2在db+sc資料庫下創建數據表employee表結構如下圖用s
摘要 (2)刪除第(1)步創建的資料庫,再次使用SQL命令創建資料庫,請給出SQL代碼。