晕,一看就知道你是初学者,这是最简单的主外键关联:
1、一个教员可讲授多门课程,一门课程只能被一个教员讲授:课程表中加一个教员ID的外键用来指向教员表中主键ID

2、一个学生选修多门课程,每门课程有多个学生选修,学生学习有成绩:这是多对多的关系,创建一个关联表用来关联学生表和课程表,有两个外键一个是学生ID,一个是课程ID,然后一个成绩的字段即可。
3、一门课只在一个教室上,一个教室可上多门课:课程表中添加一个教室ID的外键指向教室表的主键ID。
因此需要以下表:
教员表:主键ID、职工号、姓名、年龄、职称
学生表:主键ID、学号、姓名、年龄、性别
课程表:主键ID、课程号、课程名、课时数、教员ID(外键ID)、教室ID
学生、教程关联表:主键ID、学生ID、课程ID、成绩
教室表:主键ID、教室编号、地址、容量
29
--学生信息(学号,姓名,性别,籍贯,班级编号)和成绩表(学号,课程编号,成绩,是否重修
--学生信息表中学号为主键,其他信息都不允许为空
--通过学号与成绩表形成一个一对多的关系,成绩表中的成绩的默认值为0,但必须在0~100之间。
CREATE TABLE 学生信息
(
学号 INT IDENTITY
NOT NULL
PRIMARY KEY ,
姓名 VARCHAR(50) NOT NULL ,
性别 BIT NOT NULL
DEFAULT (0) ,
籍贯 VARCHAR(50) NOT NULL ,
班级编号 INT NOT NULL
)
CREATE TABLE 成绩
(
学号 INT NOT NULL
FOREIGN KEY REFERENCES 学生信息 (学号) ,
课程编号 INT NOT NULL ,
成绩 INT NOT NULL
DEFAULT (0) ,
是否重修 BIT NOT NULL
DEFAULT (0)
)
ALTER TABLE 成绩 ADD ConSTRAINT ck_成绩 CHECK(100 >= 成绩 AND 成绩>=0)
SELECT * FROM 学生信息
SELECT * FROM 成绩
关于反映这三张表中数据之间的联系,提供三方面信息以供参考:
1、表关系分析:学生表与课程表是多对多的关系,建立一张关联表也就是选课表来将学生表与程表产生关联。
2、数据库表分析:学生表包括学生相关信息,课程表包括课程相关信息,选课表放其他两张表的各一个字段(可以维护唯一性,比如说主键)。
3、实体分析:包含学生和课程两个实体,在每个实体中加入另外一个实体的集合。
PB9里面提供了SQLSERVER的接口。
打开PB9,看上面菜单的DATAbase那一项,打开,选择SQL SERVER,新建,把服务名,登录用户名和密码都填写上,就可以配置成功了。
如果你的SQL SERVER 2000设置的是WINDOWS用户登录,那么就要用ODBC连接来配置一个数据源,然后在PB的DATAbase选项下选DATAbase,ODBC一项来配置。
如何配置ODBC,请看下面。
设置--控制面板--ODBC数据源--默认打开是用户DSN--增加--在弹出的新建数据源左边选择最底下的SQL Server--单击完成--数据源名称任意--描述不用填--服务名如果是本地输入:. 或是127.0.0.1--下一步--如果你安装SQL的时候是混合验证方式那么直接下一步,如果是SQL验证方式就选择使用用户和密码的SQL验证,然后将用户名中的ADMINISTRATOR删除改为SA,密码就是SA的口令,再下一步--这里能够看到MASTER数据库一般就没有问题了,选择你要操作的数据库--下一步--完成。在完成窗口中可以测试一下数据源,如果测试成功,SQL应该没有问题。
以上就是关于SQL server 2005数据库如何建表:某教学管理系统涉及教员、学生、课程、教室四个实体全部的内容,如果了解更多相关内容,可以关注,你们的支持是我们更新的动力!
版权声明:我们致力于保护作者版权,注重分享,被刊用文章【教务管理系统数据库建表】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!;
工作时间:8:00-18:00
客服电话
电子邮件
beimuxi@protonmail.com
扫码二维码
获取最新动态
