数据表设计问题

时间:2022-03-07 01:35:24
在设计一个学校系统,碰到如下问题,有三个表,
老师信息表,结构中列有 ID(主键,自动增长),姓名,性别,还有其它信息列等。
学生信息表,结构中列中ID(主键,自动增长),姓名,性别,还有其它信息列等。

为了能随时查询教师指导学生的获奖情况,又设计了第三个表,竞赛表,结构如下:

ID(主键,自动增长)
teacherID      与教师表中的主键ID关联
studID         与学生表中的主键ID关联
huojiangDATE    获奖日期
huojiangMS      获奖日期
jibi            获奖日期

现在的问题是在向竞赛表插入记录时,如何快速获得学生和教师的ID,使这条记录与
教师和学生关联起来。

5 个解决方案

#1


???
select * from tb1,tb2,tb3 where tb3.teacherID=tb1.teacherID and tb3.studid=tb2.studid;

#2


不明白是什么意思??

插入记录时,然必须要知道老师与学生的ID,不然怎么插入??

如果要找这个老师的ID,很简单,select ID from Table_Teacher where name='****'
如果要找这个学生的ID,很简单,select ID from Table_Student where name='****'

#3


我现在问的不是查询语句如何写。


我想问在客户输入时,如何得到教师和学生的ID,总不能先查询出教师与学生的ID,然后再在界面中,输入一条竞赛纪录,那不是太麻烦的,

我所需要的就是如何在输入时,快速得到 教师与学生的ID,(如通过列表框选择的形式),

大家给个思路吧!谢谢

#4


你是说输入姓名查id吗?
你的id有什么含义吗?
遇到重名的老师或学生怎么办?

我的想法是:
老师和学生表以教师编号和学号为主键,输入时输入姓名,到表中查找id,如果遇到重名的给出重名老师或学生的教师编号或学号,再选择一下就行了

#5


我所需要的就是如何在输入竞赛记录时,快速得到 教师与学生的ID,并输入数据库表中,因为竞赛记录表有这二项内容,用于关联,方便今后查询。

我说的教师ID和学生ID是主键,采取自动增长方法,所以重名的教师或学生的ID不会相同。

看来我每输入一条学生竞赛记录,都先要人工输入教师和学生姓名,查出相应的ID,再把这2个ID连同其它信息作为一条记录插入到数据库表中,那是多么郁闷的事!!!

有没有更好的办法?

#1


???
select * from tb1,tb2,tb3 where tb3.teacherID=tb1.teacherID and tb3.studid=tb2.studid;

#2


不明白是什么意思??

插入记录时,然必须要知道老师与学生的ID,不然怎么插入??

如果要找这个老师的ID,很简单,select ID from Table_Teacher where name='****'
如果要找这个学生的ID,很简单,select ID from Table_Student where name='****'

#3


我现在问的不是查询语句如何写。


我想问在客户输入时,如何得到教师和学生的ID,总不能先查询出教师与学生的ID,然后再在界面中,输入一条竞赛纪录,那不是太麻烦的,

我所需要的就是如何在输入时,快速得到 教师与学生的ID,(如通过列表框选择的形式),

大家给个思路吧!谢谢

#4


你是说输入姓名查id吗?
你的id有什么含义吗?
遇到重名的老师或学生怎么办?

我的想法是:
老师和学生表以教师编号和学号为主键,输入时输入姓名,到表中查找id,如果遇到重名的给出重名老师或学生的教师编号或学号,再选择一下就行了

#5


我所需要的就是如何在输入竞赛记录时,快速得到 教师与学生的ID,并输入数据库表中,因为竞赛记录表有这二项内容,用于关联,方便今后查询。

我说的教师ID和学生ID是主键,采取自动增长方法,所以重名的教师或学生的ID不会相同。

看来我每输入一条学生竞赛记录,都先要人工输入教师和学生姓名,查出相应的ID,再把这2个ID连同其它信息作为一条记录插入到数据库表中,那是多么郁闷的事!!!

有没有更好的办法?