现要建立关于系、学生、班级的数据库,关系模式为

来源:百度知道 编辑:UC知道 时间:2024/05/31 08:47:50
现要为学校建立一个数据库,设学校环境如下:一个系有若干个专业,每个专业一年只招一个班,每个班有若干个学生。现要建立关于系、学生、班级的数据库,关系模式为:
学生 STUDENT (学号,姓名,性别,年龄,班号)
班 CLASS (班号,专业名,系名,入学年份)
系 DEPARTMENT (系号,系名)
试用 SQL 语言完成以下功能:
1、用sql语言创建以上3个表,在定义中要求声明:
( 1 )每个表的主外码。
( 2 )学生的年龄介于 16到 30岁之间。
( 3 )系名不能为空。

2、插入如下数据,每个表插入前两条记录即可
CLASS (
101 ,软件,机电工程系, 2005 ; 102 ,微电子,机电工程系, 2006 ;
111 ,无机化学,外语系, 2005 ; 112 ,高分子化学,外语系, 2006 ;
121 ,统计数学,教育系, 2005 ; 131 ,现代语言,电子信息系, 2006 ;
141 ,国际贸易,经济管理系, 2007 ; 142 ,国际金融,经济管理系, 2006 ;

STUDENT (
8101 ,张三,男, 18 , 101 ; 8102 ,钱四,女, 16 , 121 ;
8103 ,王玲,女, 17 , 131 ; 8105 ,李飞,男, 19 , 102 ;
8109 ,赵四,女, 18 , 141 ; 8110 ,李可,女, 20 , 142;
8201 ,张飞,男, 18 , 111 ; 8302 ,周瑜,男, 16 , 112 ;
8203 ,王亮,男, 17 , 111 ; 8305 ,董庆,男, 19 , 102 ;
8409 ,赵龙,男, 18 , 101 ; 8510 ,李丽,女, 20 , 142 )
DEPARTMENT(
01,电子信息系; 02,机电工程系;

学生表
crete table student(
student_no varchar(20) not null prinary key,
student_name varchar(20) not null,
stucent_sex varchar(6),
student_age int,
class_no varchar(10) not null
)
insert into student
select '8101','张三','男','18' ,'101'
union
select '8102 ','钱四','女','16','121'
union
select '8103','王玲','女','17','131'
union
...
不全写了,往下都一样.
=====================================
班级表
create table class(
class_no varchar(10) not null prinary key,
class_name varchar(50) not null,
department_name varchar(50),
ruxue_time datetime
)
insert into class
select '101' ,'软件','机电工程系', '2005 '
union
select '102' ,'微电子','机电工程系', '2006 '
union
...
=================