04-学院管理系统数据库-专业管理数据操作

04学院管理系统数据库-专业管理数据操作

文章目录

项目描述

学校信息化管理已经成为各个学校信息化建设的一个标志,学院管理系统则是学校信息化的一个重要部分,本项目主要是对学院管理系统数据库中的学院部门管理信息进行操作。

学院管理系统的数据库操作要求如下

1)数据库。

2)部门信息表Base_SchoolInfo,表结构如表J2-4-1所示。

表J2-4-1 Base_SchoolInfo表

字段名 字段说明 数据类型 允许为空 备注
SchoolCode 学院编码 整型 主键
SchoolName 学院全称 字符(80)
SchoolAddress 学院地址 字符(100)
President 校长 字符(30)
FoundDate 建校日期 日期时间
SchoolPostCode 学院邮编 字符(6)
Tel 联系电话 字符(30)
Fax 传真 字符(20)
Email 电子邮件 字符(20)
Url 主页 字符(30)
SchoolIntroduction 学院简介 字符(50)

3)关系表Depart_SchoolInfo,表结构如表J2-4-2所示。

表J2-4-2 Depart_SchoolInfo表

字段名 字段说明 数据类型 允许为空 备注
Depart Code ID 整型 主键(自增)
SchoolCode 学院代码 字符(80) 外键
Base_DepartCode 专业代码 字符30) 外键
Remark 备注 字符(50)

4)专业信息表Base_DeparlInfo,表结构如表J2-4-3所示。

表J2-4-3 Base_DeparlInfo表

字段名 字段说明 数据类型 允许为空 备注
Base_DepartCode 专业编码 整型 主键
Depart Name 专业全称 字符(80)
Department head 专业主任 字符30)
Tel 联系电话 字符(30)
Fax 传真 字符(20)
Email 电子邮件 字符(20)
Url 主页 字符(30)
Introduction 系部简介 字符(50)

5)表Base_SchoolInfo基础数据如表J2-4-4所示。

表J2-4-4 Base_SchoolInfo表基础数据

字段名 字段值
SchoolCode 02
SchoolName 通信学院
SchoolAddress 湖南长沙岳麓山
President 校长钟
FoundDate 1976-01-01
SchoolPostCode 410200
Tel 0731-82372343
Fax 0731-82372343
Email xiaoban@hnu.cn
Url http://www.hnu.edu.cn
SchoolIntroduction

6)在表Depart_SchoolInfo的基本数据,如表J2-4-5所示基础数据。

表J2-4-5 Depart_SchoolInfo表基础数据

Depart Code Depart Name Department head Tel Fax Email Introduction
1 软件工程 王勇 13875139366 0731-82372343 Wy@hnu.cn 专业主要从事软件开发相关的研究
2 软件技术 毛灿 13254568996 0731-82372343 MC@hnu.cn 专业主要从事软件开发的研究
3 计算机应用 周晨 13398745648 0731-82372343 Zc@hnu.cn 主要从事计算机软、硬件的维护
4 数字媒体 邓婕 17029683645 0731-82372343 Dj@hnu.cn 专业主要从事多媒体数字化的研究

(1)任务描述

任务1: 用SQL语言创建学院管理系统数据库

1)自拟一个数据库名字,判断系统中是否有该名字的数据库,如果有则删除;如果没有则创建该数据库。

2)主数据库文件初始值10MB,最大20MB,按15%进行递增。

3)日志文件初始值为5MB,最大为10MB,自动增长。

IF DB_ID('TEST') IS NOT NULL DROP DATABASE TEST
GO
CREATE DATABASE TEST
ON PRIMARY
(
	NAME=TEST,
	FILENAME='E:\xxx\TEST.mdf',
	SIZE=10MB,
	MAXSIZE=20MB,
	FILEGROWTH=15%
)
LOG ON
(
	NAME=TEST_log,
	FILENAME='E:\xxx\TEST_log.ldf',
	SIZE=5MB,
	MAXSIZE=10MB
)
GO

任务2: 用SQL语言创建部门管理信息表Base_SchoolInfo、专业信息表Base_SchoolInfo、关系表Depart_SchoolInfo

1)按照提供的表J2-4-1、表J2-4-2、表J2-4-3结构创建数据库表,并设主键、外键。

CREATE TABLE Base_SchoolInfo(
	SchoolCode INT PRIMARY KEY NOT NULL,
	SchoolName NVARCHAR(80) NOT NULL,
	SchoolAddress NVARCHAR(100) NOT NULL,
	President NVARCHAR(30) NOT NULL,
	FoundDate DATE,
	SchoolPostCode NVARCHAR(6),
	Tel NVARCHAR(30),
	Fax NVARCHAR(20),
	Email NVARCHAR(20),
	Url NVARCHAR(30),
	SchoolIntroduction NVARCHAR(50),
)
CREATE TABLE Base_DeparlInfo(
	Base_DepartCode INT NOT NULL PRIMARY KEY,
	DepartName NVARCHAR(80) NOT NULL,
	Departmenthead NVARCHAR(30) NOT NULL,
	Tel NVARCHAR(30),
	Fax NVARCHAR(20),
	Email NVARCHAR(20),
	Url NVARCHAR(30),
	Introduction NVARCHAR(50),
)
CREATE TABLE Depart_SchoolInfo(
	DepartCode INT IDENTITY(1,1) PRIMARY KEY NOT NULL,
	SchoolCode INT NOT NULL,
	Base_DepartCode INT NOT NULL,
	Remark NVARCHAR(50),
	foreign key (SchoolCode) references Base_SchoolInfo(SchoolCode),
	foreign key (Base_DepartCode) references Base_DeparlInfo(Base_DepartCode),
)

任务3: 用SQL语言对部门管理信息表Base_SchoolInfo、专业信息表Depart_SchoolInfo进行操作、关系表Depart_SchoolInfo

1)除数字媒体专业外,其他专业都不属于通信学院,请把相关数据填入三个表格中去。

2)将软件技术专业“Depart Code”的代码改为5,并按参照关系修改关系表。

3)删除“软件工程”专业相关专业,并同时产生关系表中记录。

INSERT INTO Base_SchoolInfo values(02,'通信学院','湖南长沙岳麓山','校长钟','1976-01-01','410200','0731-82372343','0731-82372343','xiaoban@hnu.cn','http://www.hnu.edu.cn',null)


INSERT INTO Base_DeparlInfo 
values(1,'软件工程','王勇','13875139366','0731-82372343','Wy@hnu.cn',null,'专业主要从事软件开发相关的研究'),
(2,'软件技术','毛灿','13254568996','0731-82372343','MC@hnu.cn',null,'专业主要从事软件开发的研究'),
(3,'计算机应用','周晨','13398745648','0731-82372343','Zc@hnu.cn',null,'主要从事计算机软、硬件的维护'),
(4,'数字媒体','邓婕','17029683645','0731-82372343','Dj@hnu.cn',null,'专业主要从事多媒体数字化的研究')

INSERT INTO Depart_SchoolInfo
values((select SchoolCode from Base_SchoolInfo where SchoolName = '通信学院'), (select Base_DepartCode from Base_DeparlInfo where DepartName = '数字媒体'),null)

INSERT INTO Depart_SchoolInfo
values((select SchoolCode from Base_SchoolInfo where SchoolName = '计算机学院'), (select Base_DepartCode from Base_DeparlInfo where DepartName = '软件工程'),null),
((select SchoolCode from Base_SchoolInfo where SchoolName = '计算机学院'), (select Base_DepartCode from Base_DeparlInfo where DepartName = '计算机应用'),null),
((select SchoolCode from Base_SchoolInfo where SchoolName = '计算机学院'), (select Base_DepartCode from Base_DeparlInfo where DepartName = '软件技术'),null)



DELETE from Depart_SchoolInfo where Base_DepartCode=(select Base_DepartCode from Base_DeparlInfo where DepartName = '软件技术')
UPDATE Base_DeparlInfo set Base_DepartCode = 5 where DepartName = '软件技术'
INSERT INTO Depart_SchoolInfo values ((select SchoolCode from Base_SchoolInfo where SchoolName = '计算机学院'), (select Base_DepartCode from Base_DeparlInfo where DepartName = '软件技术'),null)

DELETE FROM Depart_SchoolInfo where Base_DepartCode=(select Base_DepartCode from Base_DeparlInfo where DepartName = '软件工程')
DELETE FROM Base_DeparlInfo where DepartName = '软件工程'
上一篇:SQL SERVER 中构建执行动态SQL语句


下一篇:使用JSON来实现数据库中的动态条件匹配