数据库表设计,一张表和多张表有关系,并且是多对多关系

数据库表设计,一张表和多张表有关系,并且是多对多关系,第1张

单表的就不详细说了

列举一个吧,就比如班级表

class_id(主键)

class_name

class_studentnumber

//老师表和学生表也是一样

在此基础上,再添加下表

老师班级表

teacher_id

class_id

student_id

teacher_name

teacher_sex

其中主键为:teacher_id和class_id

双主键,就可以实现多对多关系

---建课程表--

create table 课程表

{

课号 char(6) not null,

名称 char(10) not null

}

go

--建学生表--

create table 学生表

{

学号 char(6) not null,

姓名 varchar(10) not null,

性别 char(2) ,

民族 char(10) not null

}

go

--建成绩表--

create table 成绩表

{

学号 char(6) not null,

课程号 char(6) not null,

分数 char(5) not null

}

go

--添加信息--

insert into 课程表 values('100001','大学语文')

insert into 课程表 values('100002','大学英语')

go

--检索姓李的女同学--

select 姓名,性别,民族 from 学生表 where 性别=‘女’and 姓名=‘李%’

楼主给点分吧

最后那一段帮你小改了下,直接执行

if OBJECT_ID('up_init','p')is not null

drop proc up_init

go

create proc up_init

as

begin

--

--遍历每一个学生

declare my_c cursor scroll

for select stuid from student

--2

open my_c

--3

declare @n int,@stuid int,@score float

set @n=1

select @score=score from Grade

--begin

while (@n<=@@CURSOR_ROWS)

begin

fetch next from my_c into @stuid

insert into Grade values('语文',RAND()100,@stuid)

insert into Grade values('数学',RAND()100,@stuid)

insert into Grade values('英语',RAND()100,@stuid)

set @n=@n+1

end

--4

close my_c

--5

deallocate my_c

end

-----------------------------------

go

exec  up_init

select  from Grade

以上就是关于数据库表设计,一张表和多张表有关系,并且是多对多关系全部的内容,包括:数据库表设计,一张表和多张表有关系,并且是多对多关系、一个SQL数据库的设计题 急 各位大侠帮忙啊!~~、新建数据库,三张表 学生表 ,成绩表,课程表(有以下课程:语文,数学,英语),目前有100个学生等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9494525.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存