数据库实验报告
姓名: 学号: 20xx29010142 专业: 计算机科学与技术1班 实验内容: 基本SOL语言应用
一. 基本表操作
1. 建立基本表
1) 创建S表,其中包括:
CREATE TABLE S(
SNO CHAR(9) PRIMARY KEY,
SNAME CHAR(20) NOT NULL UNIQUE,
STATUS CHAR(4),
CITY CHAR(20)
);
2) 创建P表,其中包括:
CREATE TABLE P(
PNO CHAR(9),
PNAME CHAR(20) NOT NULL UNIQUE,
COLOR CHAR(15),
WEIGHT CHAR(10)
);
3) 创建J表,其中包括:
CREATE TABLE J(
JNO CHAR(9) PRIMARY KEY,
JNAME CHAR(20) NOT NULL UNIQUE,
CITY CHAR(15)
);
4) 创建SPJ表,其中包括:
CREATE TABLE SPJ(
SNO CHAR(9),
PNO CHAR(9),
JNO CHAR(9),
QTY SMALLINT
);
2. 修改基本表
1) 在S表中加入数量SNA属性(INT型)
ALTER TABLE S ADD SNA INT;
2) 将S表中SNA类型改为SMALL型
ALTER TABLE S ALTER COLUMN SNA SMALLINT;
3. 删除基本表
1) 如需要删除J表
DROP TABLE J;
二. 索引操作
1建立索引.
CREATE UNIQUE INDEX JNON ON J(JNO);
2.删除索引(删除索引JNON)
DROP INDEX J.JNON ;
三. 视图操作
1.建立视图(在J基本表上为J3建立一个视图J33)
CREATE VIEW SPJ1 AS
SELECT *
FROM SPJ
Where SPJ .SNO='S1'
2. 删除视图(删除视图J33)
DROP VIEW SPJ1;
四. 数据操作
1. 插入数据
1)向S表中插入数据
INSERT INTO S VALUES('S1','精益',20,'天津');
INSERT INTO S VALUES('S2','盛锡',20,'北京');
INSERT INTO S VALUES('S3','东方红',20,'北京');
INSERT INTO S VALUES('S4','丰泰盛 ',20,'天津');
INSERT INTO S VALUES('S5','为民',20,'上海');
2)向P表中插入数据
INSERT INTO P VALUES('P1','螺母','红',12);
INSERT INTO P VALUES('P2','螺栓','绿',17);
INSERT INTO P VALUES('P3','螺丝刀','蓝',14);
INSERT INTO P VALUES('P4','螺丝刀','红',14);
INSERT INTO P VALUES('P5','凸轮','蓝',40)
INSERT INTO P VALUES('P6','齿轮','红',30);
3)向J表中插入数据
INSERT INTO J VALUES('J1', '三建','北京');
INSERT INTO J VALUES('J2','一汽','长春');
INSERT INTO J VALUES('J3','弹簧厂','天津');
INSERT INTO J VALUES('J4','造船厂','天津');
INSERT INTO J VALUES('J5','机车厂','唐山')
INSERT INTO J VALUES('J6','无线电厂','常州')
INSERT INTO J VALUES('J7','半导体厂','南京');
4)向SPJ表中插入数据
INSERT INTO SPJ VALUES('S1','P1','J1',200);
INSERT INTO SPJ VALUES('S1','P1','J3',100);
INSERT INTO SPJ VALUES('S1','P1','J4',700);
INSERT INTO SPJ VALUES('S1','P2','J2',100);
INSERT INTO SPJ VALUES('S2','P3','J1',400);
INSERT INTO SPJ VALUES('S2','P3','J2',200);
INSERT INTO SPJ VALUES('S2','P3','J4',500);
INSERT INTO SPJ VALUES('S2','P3','J5',400);
INSERT INTO SPJ VALUES('S2','P5','J1',400);
INSERT INTO SPJ VALUES('S2','P5','J2',100);
INSERT INTO SPJ VALUES('S3','P1','J2',200);
INSERT INTO SPJ VALUES('S3','P3','J1',200);
INSERT INTO SPJ VALUES('S4','P5','J1',100);
INSERT INTO SPJ VALUES('S4','P6','J1',300);
INSERT INTO SPJ VALUES('S4','P6','J3',200);
INSERT INTO SPJ VALUES('S5','P2','J4',100);
INSERT INTO SPJ VALUES('S5','P3','J4',200);
INSERT INTO SPJ VALUES('S5','P6','J1',200);
INSERT INTO SPJ VALUES('S5','P6','J2',500);
2. 修改数据(将S表中STATUS 全部加1)
UPDATE S
SET STATUS = STATUS+1;
3. 删除数据(删除S表中CITY的数据)
DELETE FROM S
WHERE SNO='S1' ;
五.查询操作..第三章课后习题4
1)求供应工程J1零件的供应商号码SNO
SELECT SNO
FROM SPJ
WHERE SPJ.JNO='J1';
2)求供应工程J1零件P1的供应商号码SNO:
SELECT SNO
FROM SPJ
WHERE SPJ.JNO='J1'AND
SPJ.PNO='P1';
3)求供应工程J1零件为红色的供应商号码SNO
SELECT SNO
FROM SPJ,P
WHERE SPJ.JNO='J1'AND
SPJ.PNO=P.PNO AND
COLOR='红';
4)求没有使用天津供应商生产的红色零件的工程号JNO
SELECT JNO FROM SPJ
WHERE JNO NOT IN (
SELECT JNO FROM SPJ,P,S
WHERE S.CITY='天津' AND
COLOR='红' AND
S.SNO=SPJ.SNO AND
P.PNO=SPJ.PNO)
5)求至少用了供应商S1所供应的全部零件的工程号JNO。
分两步查询:
A、查询S1供应商供应的零件号
SELECT DIST PNO FROM SPJ WHERE SNO='S1'结果是(P1,P2)
B、查询哪一个工程既使用P1零件又使用P2零件。
SELECT JNO FROM SPJ WHERE PNO='P1'
AND JNO IN (SELECT JNO FROM SPJ WHERE PNO='P2')
六.第三章.课后习题5
1)找出所有供应商的姓名和所在城市。
SELECT SNAME,CITY FROM S
2)找出所有零件的名称.颜色.重量。
SELECT PNAME,COLOR,WEIGHT FROM P
3)找出使用供应商S1所供应零件的工程号码。
SELECT JNO FROM SPJ WHERE SNO='S1'
4)找出工程项目J2使用的各种零件的名称及其数量。
SELECT PNAME,QTY FROM SPJ,P
WHERE P.PNO=SPJ.PNO AND SPJ.JNO='J2'
5)找出上海厂商供应的所有零件号码。
SELECT PNO FROM SPJ,S WHERE S.SNO=SPJ.SNO AND CITY='上海'
6)出使用上海产的零件的工程名称。
SELECT JNAME FROM SPJ,S,J
WHERE S.SNO=SPJ.SNO AND S.CITY='上海' AND J.JNO=SPJ.JNO
7)找出没有使用天津产的零件的工程号码。
SELECT JNO FROM SPJ
WHERE JNO NOT IN (SELECT JNO FROM SPJ,S WHERE S.SNO=SPJ.SNO AND S.CITY='天津')
8)把全部红色零件的颜色改成蓝色。
UPDATE P SET COLOR='蓝' WHERE COLOR='红'
9)由S5供给J4的零件P6改为由S3供应。
UPDATE SPJ SET SNO='S3' WHERE SNO='S5' AND JNO='J4' AND PNO='P6'
10)从供应商关系中删除供应商号是S2的记录,并从供应情况关系中删除相应的记录。
A、DELETE FROM S WHERE SNO='S2'
B、DELETE FROM SPJ WHERE SNO='S2'
11)请将(S2,J6,P4,200)插入供应情况关系。
INSERT INTO SPJ VALUES('S2','J6','P4',200)
姓名:王蕊
学号: 20xx29010142
第二篇:数据库实验报告
班级学号 姓名 实验地点
日期时间 指导老师
实验目的
1、掌握在企业管理器中进行数据库恢复的步骤。
2、掌握使用T-SQL语句进行数据库恢复的方法。
实验准备
1、了解在企业管理器中进行数据库恢复的步骤。
2、了解使用T-SQL语句进行数据库恢复的方法。
实验步骤
1.在企业管理器中数据库完全备份
(1)在企业管理器中创建命名备份设备如下:
备份地址:
2用T-SQL语句数据库完全备份
使用T-SQL语句,对数据库CPXS进行完全数据库恢复。
1.在企业管理器中进行数据库恢复的步骤。
启动SQL Sever企业管理器,选择菜单项“工具→还原数据库 ?”。在所出现窗口中按提示操作选择备份设备CPXSBAK,此时在设备框中将显示该逻辑设备的物理路径名,如图下对话框,单击“确定”按钮。 还原地址:
还原备份:
还原数据库:
还原成功:
2.使用T-SQL语句进行数据库恢复的方法。
在查询分析器窗口输入如下的语句并执行:
RESTORE DATABASE CPXS
FROM CPXSBK
实验总结