WEB数据库程序设计语言课程设计说明书
(2016-2017-1-14级)
题目: 网上书店信息管理系统
web数据库程序设计语言课程设计任务书
题目: 网上书店信息管理系统
课程设计从 2016 年 12 月 30 日起到 2017年 1 月 8日
1、课程设计的内容和要求(包括原始数据、技术要求、工作要求等):
1)、设计内容:
开发基于intranet网络上B/S模式的信息管理系统,要求能实现数据录入、数据删除、数据修改和数据浏览以及数据查询等基本功能。
2)、课程设计的要求:
课程设计教学基本要求:通过课程设计,要求学生在指导教师的指导下,完成设计课题的全部内容,包括:
(1)系统分析与数据库设计阶段
1)通过调查研究,选择一个实际应用数据库的信息管理系统的课题。
2)进行系统需求分析与概念设计,写出系统需求分析分析报告,分析方法参考数据库系统概论课本第7章7.2需求分析、7.3概念结构设计(E-R图设计)、7.4逻辑结构设计(关系模式设计);分析实例参照周慧/施乐军主编的人民邮电出版社出版《数据库应用技术—SQL Server 2008R2》(第2版)的第2章数据库需求分析与概念设计(P18-41)。
3)建立关系数据模型、完成数据库的逻辑设计,确定数据库结构与功能、表的结构、列级约束、表级约束、表与表之间的关联关系、参照关系、视图、存储过程等,并对关系模式进行优化使其符合3NF的要求。充分考虑系统安全性、数据的完整性等要求,并写出系统设计方案。
(2) 页面设计阶段
页面布局设计、确定网页元素、各种样式规则设计。要求页面颜色搭配美观、简洁,字体大小协调,图片内容与文字内容相互衬托并与软件功能相匹配。
(3)应用程序设计阶段
1)实现基于intranet网络上B/S模式的信息管理系统,要求在客户端利用IE浏览器能进行数据录入、数据删除、数据修改和数据浏览以及数据查询等基本功能。
2)实现应用程序的设计、编程、优化功能,即能从前端页面实现数据完整性、有效性、正确性和数据库安全性等功能,又能在后台数据库管理平台上实现数据完整性、有效性、正确性和数据库安全性等功能。
(4)系统集成调试阶段
对系统的各个应用程序进行集成和调试,进一步优化系统性能,改善系统用户界面、完善功能。
3)、课程设计选题、学时分配、进度安排
从以下六题中任选一题作为课程设计的题目(用选定的题目替换××信息管理系统):
(1)人事信息管理系统;
(2)工资信息管理系统;
(3)仓库信息管理系统;
(4)图书借阅信息管理系统。
(5)网上书店信息管理系统
(6)普通高等学校招生信息管理系统
学时分配为:
教学内容 |
学时 |
地点 |
备注 |
查资料,调研、做需求分析 |
0.5天 |
图书馆、实际部门 |
|
数据库系统及数据模型设计 |
0.5天 |
图书馆、实验室 |
|
数据库的定义、建立和维护 |
0.5天 |
数学综合实验室 |
统计实验室 |
数据库的视图和表的定义 |
0.5天 |
数学综合实验室 |
统计实验室 |
数据库完整性和安全性设计 |
0.5天 |
数学综合实验室 |
统计实验室 |
网页界面设计与代码编写 |
0.5天 |
数学综合实验室 |
统计实验室 |
网页界面设计与代码编写 |
1天 |
数学综合实验室 |
统计实验室 |
后台数据库与前台网页联调 |
1天 |
数学综合实验室 |
统计实验室 |
后台数据库与前台网页联调 |
1天 |
数学综合实验室 |
统计实验室 |
代码测试 |
1天 |
数学综合实验室 |
统计实验室 |
成果验收 |
1天 |
数学综合实验室 |
统计实验室 |
|
|
|
|
注:教学计划课程设计为期一周(第19周2016年12月30日-2017年 1 月 8日),每天至少投入8小时研究开发时间,课程设计任务提前发放,要求接到任务后立即查阅资料、开始分析设计,要求在第19周周日(2017年1月8日)上午 8点前提交排版、打印、装订规范的课程设计报告。
4)、需求分析与概念设计:
明确所开发的软件是针对哪个行业、为那些用户开发软件,即弄清软件的用户,通过调查获得用户对数据库的信息要求、处理要求、安全性与完整性要求。用数据流图表达数据和处理的关系;用数据字典描述系统中的各类数据,数据字典包括数据项、数据结构、数据流、数据存储和处理过程,画出分E-R图,然后再合并成总的系统的E-R图。
5)数据库逻辑设计
由E-R图建立关系数据模型,完成数据库的逻辑设计,确定数据库结构与功能、表的结构、列级约束、表级约束、表与表之间的关联关系、参照关系、视图、存储过程等,并对关系模式进行优化使其符合3NF的要求。充分考虑系统安全性、数据的完整性等要求,并写出系统设计方案。
6)页面设计最低要求
① 能够输入基本信息、能够实现元组信息修改、个别元组删除、新元组插入;
② 能够实现对信息的浏览;
③ 能够实现对信息进行查询;
7)、系统性能要求:
① 系统安全、可靠、能保证数据的完整性和安全性;
② 功能齐全;
③ 操作方便、界面友好;
④ 易于维护和扩充。
7)、系统的功能分析:
信息资料维护:系统维护包括对各种表记录的修改、删除、添加等操作。
信息资料浏览:对数据表中的信息进行浏览。
信息资料查询:可以按主键等相关信息进行精确查询或模糊查询。
8)、系统功能模块
信息管理系统功能模块应当有:数据输入模块、数据查找与浏览模块、数据修改模块、数据删除模块、报表显示模块和打印模块构成。
8)、技术要求
使用ADO.NET技术连接数据源
9)、软件打包与发行要求
经过翻阅资料发现,VS2012虽然没有集成打包工具,但它为我们提供了下载的端口,需要我们手动安装一个插件InstallShield,对于初次使用InstallShield的程序员来说,需要根据提示一步步的先下载安装该打包工具。具体的打包部署及安装方法见:http://blog.csdn.net/zhang_xinxiu/article/details/9099757就提供了“VS2012程序打包部署详解”。 参考网上“VS2012程序打包部署详解”资料对你的系统进行打包发行。
10)、设备要求
每个学生一台计算机。
2、对课程设计成果的要求〔包括图表、实物等硬件要求〕:
1)提交课程设计报告
按照系统设计要求,用visual studio.net中的visual C#.NET实现基于intranet网络上B/S模式的信息管理系统,提交由需求分析说明(包括数据流图、数据字典);概念结构设计说明;逻辑结构设计说明;应用程序系统设计说明(包括主菜单、子菜单、模块功能简介、系统结构图);系统技术文档 (包括系统各模块主要流程图,软件总体测试方案与测试记录、局部测试方案与测试记录、软件调试和修改记录、测试结论、运行情况记录),系统使用说明书,源程序代码为附录构成的课程设计报告。
2)课程设计报告版式要求
执行《陕西科技大学课程设计说明书撰写格式暂行规范》
目录的要求:居中打印目录二字,(四号黑体,段后1行),字间空一字符;章、节、小节及其开始页码(字体均为小四号宋体)。节向右缩进两个字符(汉字),小节及以后标题均向右缩进四个字符(汉字)。目录中应包含正文部分的每个章节标题、设计总结、无序号的“参考文献资料”,目录的最后一项是“附录”。
正文的要求:设计说明论述清楚,公式符号撰写规范,ER图、数据流图、程序流程图等图符规范,文字简练通顺,插图简洁规范,书写整洁。文中图、表按制图要求绘制,程序调试和运行情况记录详实。
打印版面要求:A4纸,页边距:上2cm,下2cm,左2.5cm、右2cm;字体:正文宋体、小四号;行距:固定值20;页眉1.5cm ,页脚1.75cm;页码位于页脚居中打印;奇数页页眉“WEB数据库程序设计语言课程设计”,偶数页页眉“具体章标题名”,页眉宋体小5号;
段落及层次要求:每章另起一页,每章的标题都应出现在本章首页的第一行上,章标题用黑体3号,居中对齐,段前0行段后1行,单倍行距,大纲级别1级。每节标题以四号黑体左起打印(段前段后各0.5行),节下为小节,以小四号黑体左起打印(段前段后各0.5行)。换行后以小四号宋体打印正文。章、节、小节编号分别以1、1.1、1.1.1格式依次标出,空一字符后接各部分的标题。当课程设计报告结构复杂,小节以下的标题,左起顶格书写,编号依次用(1)、(2)……或1)、2)……顺序表示。字体为小四号宋体。对条文内容采用分行并叙时,其编号用(a)、(b)……或a)、b)……顺序表示,如果编号及其后内容新起一个段落,则编号前空两个中文字符。
曲线图表要求:所有曲线、图表、ER图、流程图、程序框图、示意图等不准徒手画,必须按国家规定标准或工程要求绘制(应采用计算机绘图)。
课程设计说明书(报告)中图表、公式要求如下:
(a)图:图的名称采用中文,中文字体为五号宋体,图号图名在图片下面。引用图应在图题右上角标出文献来源。图号以章为单位顺序编号。格式为:图1-1,空一字符后接图名,比如第1章第5个图是关于学生这个实体进行分析的局部ER图,图的下方的图号图名应为:图1-5 学生实体E-R图。
(b)表格:表的名称及表内文字采用中文,中文字体为五号宋体,表号表名在表格上面。表号以章为单位顺序编号,表内必须按规定的符号标注单位。格式为:表1-1,空一字符后接表格名称。比如第4章第1个表是关于学生表的表结构描述表,表的上方表号表名则应为:表4-1 学生表的表结构描述表。
(c)公式:公式书写应在文中另起一行,居中排列。公式序号按章顺序编号。字体为五号宋体,序号靠页面右侧对齐。比如第3章第1个公式其编号则应为:(3-1)。
设计体会及今后的改进意见:设计总结要写出对WEB数据库程序设计过程的认识及编程经验等技术性、学术性总结;体会要简洁、真实、深刻,切忌空话、大话,客套话和矫揉造作之词。改进意见要合理、中肯。
参考文献的要求:另起一页,居中打印参考文献四字(四号黑体,段前段后1行),字间空一字符;另起一行,按报告中参考文献出现的先后顺序用阿拉伯数字连续编号(参考文献编号应在正文中标注出);参考文献中每条项目应齐全(字体均为小四号宋体)。(格式:[编号]作者.论文或著作名称.期刊名或出版社.出版时间)。(期刊应注明第几期、起止页数(包括论著))。参考文献中条目要符合科技文献引用文献条目书写的国家标准规范。
3)设计报告装订顺序与规范要求
封面(按照给定的封面模板填写相关信息)
web数据库程序设计语言课程设计任务书
目录
web数据库程序设计语言设计课程设计报告正文
设计体会及今后的改进意见
参考文献(资料)
左边缘装订
课程设计任务书、课程设计说明书(纸质报告)和光盘(含设计说明书电子文档、设计任务书电子文档,完整的程序代码)、打印好的课程设计成绩考核表(手工填写表中专业、班级、学号、姓名等信息)等必须装入课程设计专用袋中,必须完整且准确填写课程设计专用袋封面上的各项信息。
目 录
1 需求分析 1
1.1.数据需求 1
1.1 事务需求 1
1.1系统用例 1
2 数据库逻辑设计 3
2.1 E-R图 3
2.2 实体图 3
2.3联系图 4
2.4数据字典 5
2.5图书实体 5
2.6用户实体 5
2.7 图书订购实体 5
2.8用户视图中的表 5
3数据库物理设计 6
3.1图书信息表 6
3.2 订购信息表 6
3.3 主键约束 7
4 应用程序设计 8
4.1 查询系统流程图 8
4.2更新系统流程图 9
4.3 删除系统流程图 9
4.4修改系统流程图 10
4.5 登录模块 10
4.6 管理员模块 10
4.7 用户模块 15
5 测试与运行 18
6 设计体会及相关的改进意见 19
参考文献资料 20
附录 .........................................................21
图书借阅信息管理系统从总体看可分为三大模块,分别是系统管理员模块、图书订购信息模块和用户模块。
系统管理员主要负责维护图书订阅信息、用户信息等。对于用户发出的订阅需求进行管理。同时,如果买进了新书或杂志,系统管理员可以增加这些图书信息;如果一些图书已经卖完,系统管理员还可以对图书订阅数据库中的订阅信息进行删除操作。
用户在订阅书籍之前必须先登陆,登陆后便可进行查看书籍、购买书籍等一系列操作。如果想查看馆内图书信息,用户只需单击查看按钮即可;如果想订购图书,用户先选择所要订购的图书编号,再按提交按钮系统就会将提交信息发送到后台订购数据库中。
对应于订购图书信息包括用户ID、书名、作者、类别、出版社、价格。
(1) 数据录入
a 新用户登陆时录入自己的用户名等信息。
b 录入新进图书的各项信息。
c 用户登录后录入自己的订购请求信息。
(2) 数据查询
a 查询图书的基本信息。
b 查询图书的借阅信息。
c 查询用户的请求信息。
(3) 数据修改
a 修改某些图书的基本信息。
b 修改某些图书的借阅信息(当发生订购请求后)。
c 更新某些用户的请求信息。
(4) 数据删除
a 当某些图书被订购后,从图书信息数据库中删除图书记录。
b 对已经卖完的图书从图书订阅信息数据库中删除。
(1) 用例总图
图1-1-3-1 系统用例总图
(2) 组件图
图1-1-3-2 系统组件图
图书信息管理系统的数据库可以设计定义用户(由权限可分为管理员和普通读者)、书籍、借阅信息、请求信息等实体及其之间的
联系。实体使用E-R图进行描述。为清楚起见,这里将实体图和联系图分开表
现。
(1) 图书信息的E-R图
图2-1-1-1 图书信息E-R图
(2) 用户信息的E-R图
图2-1-1-2 用户信息的E-R图
(3) 图书订阅信息的E-R图
图2-1-1-3 图书订购信息E-R图
图2-1-2-1 图书订购联系图
图2-1-2-2 管理员与用户联系
图2-1-2-3 管理员与图书联系
图2-1-2-4 管理员与用户请求联系
根据上面描述的E-R图进行数据库的逻辑结构设计。在这里以表格的形式给出数据库的设计。下面表中的字段除特殊标明的外,均不能为空。
表 2-2-1 图书实体表
字段 |
类型 |
备注 |
book_id |
int(11) |
主键,图书编号 |
book_name |
varchar(100) |
图书名称 |
book_author |
varchar(20) |
作者 |
book_place |
Varchar(100) |
出版社 |
book_price |
decimal(110) |
图书单价 |
表2-2-2 用户实体表
字段 |
类型 |
备注 |
user_id
|
int(11)
|
主键,用户编号,由用户自主选择 |
user_password |
varchar(20) |
用户密码 |
user_name |
varchar(20) |
用户名字 |
表2-2-3 图书订购实体表
字段 |
类型 |
备注 |
book_id |
int(11) |
外码 |
user_id |
Int(11) |
外码 |
(1) Book(book_id,book_name,book_author, book_price,book_price)
主键:book_id
(2) User(用户id,书号,书名,类别,作者,出版社,价格
(1) book表的定义如下:
图3-1-1-1 book表的定义
(2) book表的数据填充如下
图3-1-1-2 book表内数据
(1) buy表的定义如下
图3-1-2-1 buy表的定义图
(2) 订购buy表的数据如下
图3-1-2-2 buy表的数据图
Book表主键为book_id。Buy表的主键为书号。设置主键成功后,一旦主键为空,系统会显示相应的出错信息。
图4-1-1 查询系统流程图
图4-1-2 更新系统流程图
图4-1-3 删除系统流程图
图4-1-4 修改系统流程图
主界面如下:
图4-2-1 主界面图示
说明:登陆界面可实现管理员、用户两种身份的登录功能,如果输入的账户和密码均正确,则正常登录系统,否则系统会给出的错误信息。
当系统管理员登陆时,需要填上管理员姓名Admin及相应的密码。如下:
图4-2-2-1 管理员登陆示例图
单击登陆后,界面如下:
图4-2-2-2 管理员选择界面
管理员在该界面中选择相应的功能。
(1) 插入图书信息
当管理员选择插入记录后,进入如下的修改图书信息的界面,如下:
图4-2-2-3 管理员插入界面
当新书购进时,管理员需要填写相关的书籍信息,如下:
图4-2-2-4 管理员插入操作示例图
单击提交后,系统会返回如下的信息:
图4-2-2-5 插入数据成功返回框
此即完成了对数据库的修改操作。
(2) 更新图书信息
图4-2-2-6 管理员选择界面
管理员如果想更新图书信息,需要单击修改数据按钮即可弹出如下的界面:
图4-2-2-7 修改记录界面
管理员将需要选择修改的图书号,填上修改后的图书信息,单击提交,即可完成后台数据库的更新操作。如下:
图4-2-2-8 更新成功返回界面
此即完成了对数据库的更新操作。
(3) 删除图书信息
管理员选择删除记录后,系统会填出如下的界面:
图4-2-2-9 删除记录界面
单击确定后,系统会弹出如下界面:
图4-2-2-10 单击确定后的返回界面
完成删除功能。
当一般用户登陆成功后,系统进入如下的界面:
用户可实现相应的功能。一一介绍。。。。
(1) 查询图书信息
填写用户名和密码后进入用户订阅界面。如下:
图4-2-3-1 用户查询界面
(2) 提交订购信息
如果用户需要订购图书,只需填写相应的序号即可。填上书号等信息后,单击提交,即完成订购操作。系统就会将提交信息反馈给后台数据库。
图4-2-3-2 用户提交记录示例图
用户如果需要查看订单,只需单击订单查看按钮即可完成查询功能。如下:
图4-2-3-3 单击订单查看后的返回界面
本系统在WindowsXP环境下调试通过,并在IE浏览器和360浏览器上显示良好。
(1) 通过本次课程设计,我对C#语言有了更进一步的理解,特别是对其完全面向对象的程序设计方法有了较为深入的认识。但在C#环境中的流程控制做的还不够完善,以后要加强这方面的训练。
(2) 在页面控制方面,对css+div的页面布局方法有较为深入的理解,在此次课程设计中节省了时间。
(3) 本次课程设计虽然完成了对数据库修改、浏览、更新、删除等基本功能,但是有的地方还是不尽人意。比如说,在对图书信息进行更新时只能完成单条记录的更新操作。
(4) 进一步熟悉了实现数据库操纵的ADO.NET对象的应用,特别是DataAdapter对象的各种方法有了进一步的认识。
[1] 王珊、萨师煊.数据库系统概论(第4版).高等教育出版社。
[2] 崔淼、关六三、彭炜主编.ASP.NET程序设计教程(C#版),机械工程出版社。
[3] 崔淼、关六三、彭炜主编.ASP.NET程序设计教程(C#版)上机指导与习题解答,机械工出版社。
8.1 Default.aspx代码如下
<%@ Page Language="C#" Debug="true" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
8.2 修改操作代码如下
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="add.aspx.cs" Inherits="add" %>
.style1
{
text-align: center;
}
.style2
{
height: 23px;
}
8.3 删除操作代码如下
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="del.aspx.cs" Inherits="del" %>
.style1
{
text-align: center;
}
8.3 更新操作代码如下
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="updata.aspx.cs" Inherits="updata" %>
.style1
{
text-align: center;
}
.style2
{
height: 25px;
}
8.5修改操作代码
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.OleDb;
public partial class add : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
this.Title = "添加新纪录";
TextNo.Focus();
}
protected void ButtonSubmit_Click(object sender, EventArgs e)
{
OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = "Provider=Microsoft.Jet.OleDb.4.0;" + "Data Source=" +
Server.MapPath("App_Data/Student.mdb");
string Val = "'" + TextNo.Text + "','" + TextName.Text + "','" + RadioSex.SelectedValue.ToString() +
"','" + TextClass.Text + "','" + TextMath.Text + "'," + int.Parse(TextChs.Text);
string SqlIns = "insert into grade(uid,uname,usex,class,math,chs) values(" + Val + ")";
OleDbCommand InsCom = new OleDbCommand(SqlIns, conn);
OleDbDataAdapter da = new OleDbDataAdapter();
conn.Open();
da.InsertCommand = InsCom;
da.InsertCommand.ExecuteNonQuery();
conn.Close();
Response.Write("");
}
protected void ButtonBack_Click(object sender, EventArgs e)
{
Response.Redirect("Default.aspx");
}
protected void RadioSex_SelectedIndexChanged(object sender, EventArgs e)
{
}
protected void TextMath_TextChanged(object sender, EventArgs e)
{
}
}
8.6删除操作代码如下
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.OleDb;
public partial class del : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.Title = "删除记录";
LabelMsg.Text = "单击“确定”将删除当前记录";
OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = "Provider=Microsoft.Jet.OleDb.4.0;"+"Data Source=" +
Server.MapPath("App_Data/Student.mdb");
string SqlStr = "select top 1 * from grade";
OleDbDataAdapter da = new OleDbDataAdapter(SqlStr, conn);
DataTable dt = new DataTable();
da.Fill(dt);
GridView1.DataSource = dt;
GridView1.DataBind();
conn.Close();
}
}
protected void ButtonOK_Click(object sender, EventArgs e)
{
OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = "Provider=Microsoft.Jet.OleDb.4.0;" + "Data Source=" +
Server.MapPath("App_Data/Student.mdb");
string SqlDel = "delete from grade where uid='" + DropNo.SelectedItem.Text + "'";
OleDbCommand DelCom = new OleDbCommand(SqlDel, conn);
OleDbDataAdapter da = new OleDbDataAdapter();
conn.Open();
da.DeleteCommand = DelCom;
da.DeleteCommand.ExecuteNonQuery();
conn.Close();
Label1.Visible = true;
}
protected void DropNo_SelectedIndexChanged(object sender, EventArgs e)
{
OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = "Provider=Microsoft.Jet.OleDb.4.0;"+"Data Source=" +
Server.MapPath("App_Data/Student.mdb");
string SqlStr = "select *from grade where uid='" + DropNo.Text + "'";
OleDbDataAdapter da = new OleDbDataAdapter(SqlStr, conn);
DataTable dt = new DataTable();
da.Fill(dt);
GridView1.DataSource = dt;
GridView1.DataBind();
conn.Close();
}
protected void ButtonBack_Click(object sender, EventArgs e)
{
Response.Redirect("Default.aspx");
}
}
8.7更新操作代码如下
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.OleDb;
public partial class updata : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
this.Title = "更新记录";
DropNo.AutoPostBack = true;
if (!IsPostBack)
{
OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = "Provider = Microsoft.Jet.OleDb.4.0;" + "Data Source=" +
Server.MapPath("App_Data/Student.mdb");
string SqlStr = "select *from grade";
OleDbDataAdapter da = new OleDbDataAdapter(SqlStr,conn);
DataTable dt = new DataTable();
da.Fill(dt);
DataRow MyRow = dt.Rows[0];
TextName.Text = MyRow["uname"].ToString();
if (MyRow["usex"].ToString() == "男")
{
RadioSex.SelectedIndex = 0;
}
else
{
RadioSex.SelectedIndex = 1;
}
TextClass.Text = MyRow["class"].ToString();
TextMath.Text = MyRow["math"].ToString();
TextChs.Text = MyRow["chs"].ToString();
conn.Close();
}
}
protected void ButtonSubmit_Click(object sender, EventArgs e)
{
OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = "Provider=Microsoft.Jet.OleDb.4.0;" + "Data Source=" +
Server.MapPath("App_Data/Student.mdb");
string SqlStr = "select *from grade where uid='" + DropNo.Text + "'";
OleDbDataAdapter da = new OleDbDataAdapter(SqlStr, conn);
DataTable dt = new DataTable();
OleDbCommandBuilder builder = new OleDbCommandBuilder(da);
da.Fill(dt);
DataRow MyRow = dt.Rows[0];
MyRow[1] = TextName.Text;
MyRow[2] = RadioSex.SelectedValue.ToString();
MyRow[3] = TextClass.Text;
MyRow[4] = int.Parse(TextMath.Text);
MyRow[5] = int.Parse(TextChs.Text);
da.Update(dt);
Response.Write("");
conn.Close();
}
protected void ButtonBack_Click(object sender, EventArgs e)
{
Response.Redirect("default.aspx");
}
protected void DropNo_SelectedIndexChanged(object sender, EventArgs e)
{
OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = "Provider=Microsoft.Jet.OleDb.4.0;" + "Data Source=" +
Server.MapPath("App_Data/Student.mdb");
string SqlStr = "select * from grade where uid='" + DropNo.Text + "'";
OleDbDataAdapter da = new OleDbDataAdapter(SqlStr, conn);
DataTable dt = new DataTable();
da.Fill(dt);
DataRow MyRow = dt.Rows[0];
TextName.Text = MyRow["uname"].ToString();
if (MyRow["usex"].ToString() == "男")
{
RadioSex.SelectedIndex = 0;
}
else
{
RadioSex.SelectedIndex = 1;
}
TextClass.Text = MyRow["class"].ToString();
TextMath.Text = MyRow["math"].ToString();
TextChs.Text = MyRow["chs"].ToString();
conn.Close();
}
}