如何在asp.net页面上动态生成一张课程表

如何在asp.net页面上动态生成一张课程表,第1张

用gridview,datalist,repeater均可。

有一点疑问,你的课程表是根据数据库生成的,那你会不会去修改(添加,删除)数据库的列?

我的解释:

在使用三层的情况下::

1拖入一个gridview,一个objectdatasource数据源控件,将数据源绑定到gridview中。2数据源绑定中间层的方法,注意数据源有四个选项卡,选入相应的方法gridview可以编辑列,然后将你需要绑定的列绑定好就行了。

如果你只有一层:用sqldatasource绑定,如上

这是比较简单的方法,不知道能否帮助LZ,如果还不理解的话,可以加我的QQ注明身份aspnetIE吧。记得给分哦

晕,一看就知道你是初学者,这是最简单的主外键关联:

1、一个教员可讲授多门课程,一门课程只能被一个教员讲授:课程表中加一个教员ID的外键用来指向教员表中主键ID

2、一个学生选修多门课程,每门课程有多个学生选修,学生学习有成绩:这是多对多的关系,创建一个关联表用来关联学生表和课程表,有两个外键一个是学生ID,一个是课程ID,然后一个成绩的字段即可。

3、一门课只在一个教室上,一个教室可上多门课:课程表中添加一个教室ID的外键指向教室表的主键ID。

因此需要以下表:

教员表:主键ID、职工号、姓名、年龄、职称

学生表:主键ID、学号、姓名、年龄、性别

课程表:主键ID、课程号、课程名、课时数、教员ID(外键ID)、教室ID

学生、教程关联表:主键ID、学生ID、课程ID、成绩

教室表:主键ID、教室编号、地址、容量

首先在SQL中利用企业管理器或向导建立一个数据库,命名为学生管理系统,

启动SQL Sever服务,运行企业管理器,单击要创建数据库的服务器左边的加号图标,展开树形目录,在“数据库”节点上右击鼠标,在d出的快捷菜单中选则“新建数据库”命令,然后按照提示一步步建立数据库,不再详细叙述。

假设学生管理系统下有三个表,分别为学生表、课程表、修课表,表的结构分别如下:

学生表(student) (

学号(sno) 普通编码定长字符类型,长度7,主码,

姓名(sname) 普通编码定长字符类型,长度8,非空,

性别(ssex) 统一编码定长字符类型,长度1,

年龄(sage) 微整型,

所在系(sdept) 统一编码可变长字符类型,长度20

课程表(course) (

课程号(cno) 普通编码定长字符类型,长度6,主码,

课程名(cname) 统一编码定长字符类型,长度10,非空,

学分(credit) 小整型,

学期(semester) 小整型

修课表(sc)(

学号(sno) 普通编码定长字符类型,长度7,主码,外码

课程号(cno) 普通编码定长字符类型,长度6,主码,外码

成绩(grade) 小整型,

修课类别(type)普通编码定长字符类型,长度4

则创建表的语句分别为:

create table Student(

Sno char(7) primary key,

Sname char(8) not null,

Ssex nchar(1),

Sage tinyint,

Sdept nvarchar(20)

)

create table Course(

Cno char(6) primary key,

Cname nchar(10) not null,

Credit smallint,

Semester smallint

)

create table SC(

Sno char(7),

Cno char(6),

Grade smallint,

Type char(4),

primary key(Sno,Cno),

Foreign key(Sno)    References Student (Sno),

Foreign key(Cno)    References Course (Cno)

)

各表的结构大体如此,如有变化可自行修改。 以上数据库和表就基本建立好了,然后就可以通过数据导入或SQL语句等向数据库中添加学生的各项具体数据了。

SQL语言,是结构化查询语言(Structured Query Language)的简称。SQL语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

1、课程格子

课程网格是一款基于课程安排的移动社交产品,帮助学生和朋友了解课程安排,并有机会与一起上课的同学见面。除了编辑和创建课程表,您还可以添加课程笔记和评估教师;它支持匿名发布和更多的隐私保护。它还会提醒您上课时间、教室和讲师。

2、课程精灵

课程精灵是中国最全的校园课程应用,由Schoolsidecom新推出。该应用程序连接高校教务管理系统,可自动将课程安排一键输入手机,同时支持用户自定义“我的课程”。

3、桌面课程表

桌面课表支持记录课程名称、导师、上课地点、课程学分、开始周数、结束周数、课程类型等,界面简洁, *** 作方便;本学期所有课程直接显示在桌面,画面直观。支持显示当前时间、日期和星期;支持每天12节课的记录,兼容不同学校的课程安排。

4、智能课程表

智能课程,添加云功能,可在网站上编辑课程。直接同步到手机。可以修改背景透明度,可以设置对齐方式,可以更改一周的第一天。云端同步,支持电脑添加课表,不再需要在手机上输入一个字。

5、超级课表

超级时刻表致力于创造一种与时刻表交朋友的新方式。 只需要一个时间表APP,就能认识同学,了解大学新鲜资讯,多维度充分享受大学生活。

建表SQL语句如下(数据自己插入):

USE test

go

CREATE TABLE students

(

stno VARCHAR(10) PRIMARY KEY,

stsex VARCHAR(2) ,

birthday DATETIME,

departmentno VARCHAR(10) NOT NULL

)

CREATE TABLE department

(

departmentno VARCHAR(10) PRIMARY KEY,

departmentname VARCHAR(40)

)

CREATE TABLE course

(

courseno VARCHAR(10) PRIMARY KEY,

coursename VARCHAR(20),

coursetype VARCHAR(10),

credit TINYINT,

teacherno VARCHAR(20) NOT NULL

)

CREATE TABLE teacher

(

teacherno VARCHAR(20) PRIMARY KEY,

teachername VARCHAR(20),

zhicheng VARCHAR(20),

departmentno VARCHAR(10)

)

CREATE TABLE stu_course

(

stno VARCHAR(10),

courseno VARCHAR(10),

score TINYINT

)

--1给出学生名,查询学生所选的所有课程名、成绩,累计学分、若成绩不及格,要提示。

CREATE PROC select_stno @stno varchar(10)

AS

begin

DECLARE @table TABLE(id INT IDENTITY,coursename VARCHAR(20),score TINYINT)

INSERT INTO @table(coursename,score)

SELECT ccoursename,bscore FROM student a

JOIN stu_course b ON astno=bstno

JOIN course c ON bcourseno=ccourseno

WHERE astno=@stno

DECLARE @i INT

DECLARE @j INT

SELECT @j=COUNT() FROM @table

SET @i=1

WHILE @i<=@j

BEGIN

DECLARE @m TINYINT

DECLARE @n VARCHAR(20)

SELECT @m=score,@n=score FROM @table WHERE id=@i

IF @m<60

BEGIN

PRINT @n+'不及格'

END

SET @i=@i+1

END

END

--2给出课程名,查询学生的平均成绩

SELECT AVG(ascore) FROM stu_course a

JOIN course b ON acourseno=bcourseno

WHERE bcoursename='(课程名)'

--3各门课按平均成绩排序

SELECT bcoursename FROM stu_course a

JOIN course b ON acourseno=bcourseno

GROUP BY bcoursename

ORDER BY AVG(ascore)

--4显示所有的课程名和讲课教师名

SELECT acoursename,bteachername FROM course a

JOIN teacher b ON ateacherno=bteacherno

--5给出讲课教师名,查询所讲课程的课程名、学生成绩

SELECT ateachername,bcoursename,cscore FROM teacher a

JOIN course b ON ateacherno=bteacherno

JOIN stu_course c ON bcourseno=ccourseno

最后提醒一句,自己的作业还是自己做好

以上就是关于如何在asp.net页面上动态生成一张课程表全部的内容,包括:如何在asp.net页面上动态生成一张课程表、SQL server 2005数据库如何建表:某教学管理系统涉及教员、学生、课程、教室四个实体、如何用SQL建立一个学生成绩管理系统数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: https://outofmemory.cn/sjk/9639661.html

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

发表评论

登录后才能评论

评论列表(0条)

保存