网上书店信息管理系统

 

 

 

 

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行)。换行后以小四号宋体打印正文。章、节、小节编号分别以11.11.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


 

1 需求分析

1.1.数据需求

图书借阅信息管理系统从总体看可分为三大模块,分别是系统管理员模块、图书订购信息模块和用户模块。

系统管理员主要负责维护图书订阅信息、用户信息等。对于用户发出的订阅需求进行管理。同时,如果买进了新书或杂志,系统管理员可以增加这些图书信息;如果一些图书已经卖完,系统管理员还可以对图书订阅数据库中的订阅信息进行删除操作。

用户在订阅书籍之前必须先登陆,登陆后便可进行查看书籍、购买书籍等一系列操作。如果想查看馆内图书信息,用户只需单击查看按钮即可;如果想订购图书,用户先选择所要订购的图书编号,再按提交按钮系统就会将提交信息发送到后台订购数据库中。

对应于订购图书信息包括用户ID、书名、作者、类别、出版社、价格。

1.1 事务需求

(1) 数据录入

a 新用户登陆时录入自己的用户名等信息。

b 录入新进图书的各项信息。

c 用户登录后录入自己的订购请求信息。

(2) 数据查询

a 查询图书的基本信息。

b 查询图书的借阅信息。

c 查询用户的请求信息。

 (3) 数据修改

a 修改某些图书的基本信息。

b 修改某些图书的借阅信息(当发生订购请求后)。

c 更新某些用户的请求信息。

(4) 数据删除

a 当某些图书被订购后,从图书信息数据库中删除图书记录。

b 对已经卖完的图书从图书订阅信息数据库中删除。

1.1系统用例

(1) 用例总图

1-1-3-1 系统用例总图

(2) 组件图

1-1-3-2 系统组件图


 

 

 

 

 

 

 

 

2 数据库逻辑设计

2.1 E-R

     图书信息管理系统的数据库可以设计定义用户(由权限可分为管理员和普通读者)、书籍、借阅信息、请求信息等实体及其之间的

联系。实体使用E-R图进行描述。为清楚起见,这里将实体图和联系图分开表

现。

2.2 实体图

(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.3联系图

2-1-2-1 图书订购联系图

2-1-2-2 管理员与用户联系

2-1-2-3 管理员与图书联系

2-1-2-4 管理员与用户请求联系

2.4数据字典

根据上面描述的E-R图进行数据库的逻辑结构设计。在这里以表格的形式给出数据库的设计。下面表中的字段除特殊标明的外,均不能为空。

2.5图书实体

2-2-1 图书实体表

字段

类型

备注

book_id 

int(11)

主键,图书编号

book_name

varchar(100)

图书名称

book_author

varchar(20)

作者

book_place

Varchar(100)

出版社

book_price 

decimal(110)

图书单价

2.6用户实体

2-2-2 用户实体表

字段

类型

备注

user_id

 

int(11)

 

主键,用户编号,由用户自主选择

user_password

varchar(20)

用户密码

user_name

varchar(20)

用户名字

2.7 图书订购实体

2-2-3 图书订购实体表

字段

类型

备注

book_id

int(11)

外码

user_id

Int(11)

外码

 

2.8用户视图中的表

(1) Book(book_id,book_name,book_author, book_price,book_price)

主键:book_id

(2) User(用户id,书号,书名,类别,作者,出版社,价格


3数据库物理设计

3.1图书信息表

(1) book表的定义如下:

 

3-1-1-1 book表的定义

(2) book表的数据填充如下

 

3-1-1-2 book表内数据

3.2 订购信息表

(1) buy表的定义如下

 

3-1-2-1 buy表的定义图

(2) 订购buy表的数据如下

 

3-1-2-2 buy表的数据图

3.3 主键约束

Book表主键为book_idBuy表的主键为书号。设置主键成功后,一旦主键为空,系统会显示相应的出错信息。


4 应用程序设计

4.1 查询系统流程图

4-1-1 查询系统流程图

4.2更新系统流程图

4-1-2 更新系统流程图

4.3 删除系统流程图

4-1-3 删除系统流程图

4.4修改系统流程图

4-1-4 修改系统流程图

4.5 登录模块

主界面如下:

 

4-2-1 主界面图示

说明:登陆界面可实现管理员、用户两种身份的登录功能,如果输入的账户和密码均正确,则正常登录系统,否则系统会给出的错误信息。

4.6 管理员模块

当系统管理员登陆时,需要填上管理员姓名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 单击确定后的返回界面

完成删除功能。

4.7 用户模块

当一般用户登陆成功后,系统进入如下的界面:

 

用户可实现相应的功能。一一介绍。。。。

(1) 查询图书信息

填写用户名和密码后进入用户订阅界面。如下:

 

4-2-3-1 用户查询界面

(2) 提交订购信息

如果用户需要订购图书,只需填写相应的序号即可。填上书号等信息后,单击提交,即完成订购操作。系统就会将提交信息反馈给后台数据库。

 

4-2-3-2 用户提交记录示例图

用户如果需要查看订单,只需单击订单查看按钮即可完成查询功能。如下:

 

4-2-3-3 单击订单查看后的返回界面


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5 测试与运行

本系统在WindowsXP环境下调试通过,并在IE浏览器和360浏览器上显示良好。


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6 设计体会及相关的改进意见

(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" %>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 

<html xmlns="http://www.w3.org/1999/xhtml" >

<head id="Head1" runat="server">

    <title>无标题页</title>

    <link href="StyleSheet.css" rel="stylesheet" type="text/css" />

</head>

<body>

    <form id="form1" runat="server">

    <div id="login">

        <br />

        <br />

        <br />

        <br />

        <br />

        <br />

        <br />

        <br />

        <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>

    </div>

    <div id="left">

    

        <br />

        <br />

        <br />

        <br />

        <br />

        <asp:Button ID="Button1" runat="server" Text="书籍管理" />

        <br />

        <asp:Button ID="Button2" runat="server" PostBackUrl="~/User.aspx" Text="用户管理" />

        <br />

        <br />

        <br />

        <br />

        <br />

        <br />

        <br />

 </div>

    <div id="right">

        <asp:GridView ID="GridView1" runat="server"

            OnSelectedIndexChanged="GridView1_SelectedIndexChanged" Width="702px"  

            AutoGenerateColumns="False">

            <Columns>

                <asp:BoundField DataField="uid" HeaderText="书籍编号" />

                <asp:BoundField DataField="uname" HeaderText="书籍名称" SortExpression="文本" >

                    <ItemStyle Width="100%" />

                </asp:BoundField>

                <asp:BoundField DataField="usex" HeaderText="类别" SortExpression="文本" >

                    <ItemStyle Width="100px" />

                </asp:BoundField>

                <asp:BoundField DataField="class" HeaderText="作者" SortExpression="文本" />

                <asp:BoundField DataField="math" HeaderText="出版社" SortExpression="数据" />

                <asp:BoundField DataField="chs" HeaderText="价格" SortExpression="数据" />

            </Columns>

            

        </asp:GridView>

        <br />

        <asp:LinkButton ID="LinkIns" runat="server" OnClick="LinkIns_Click">LinkButton</asp:LinkButton>

        <asp:LinkButton ID="LinkUpdata" runat="server" OnClick="LinkUpdata_Click">LinkButton</asp:LinkButton>

        <asp:LinkButton ID="LinkDel" runat="server" OnClick="LinkDel_Click">LinkButton</asp:LinkButton>

        </div>

    </form>

</body>

</html>

8.2 修改操作代码如下

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="add.aspx.cs" Inherits="add" %>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

    <title>无标题页</title>

    <style type="text/css">

        .style1

        {

            text-align: center;

        }

        .style2

        {

            height: 23px;

        }

    </style>

    <link href="StyleSheet.css" rel="stylesheet" type="text/css" />

</head>

<body>

    <form id="form1" runat="server">

    <div id="login">

    

    </div>

    <div id="dow">

        <br />

        <br />

        <br />

        <br />

        <br />

        <br />

        <br />

    <table style="width:100%;" >

        <tr>

            <td class="style1" colspan="4">

                添加新纪录</td>

        </tr>

        <tr>

            <td>

                书籍编号</td>

            <td>

                <asp:TextBox ID="TextNo" runat="server"></asp:TextBox>

            </td>

            <td>

                书籍名称</td>

            <td>

                <asp:TextBox ID="TextName" runat="server"></asp:TextBox>

            </td>

        </tr>

        <tr>

            <td>

                类别</td>

            <td>

                <asp:RadioButtonList ID="RadioSex" runat="server" RepeatDirection="Horizontal"

                    onselectedindexchanged="RadioSex_SelectedIndexChanged">

                    <asp:ListItem Selected="True">科技类</asp:ListItem>

                    <asp:ListItem>文学类</asp:ListItem>

                </asp:RadioButtonList>

            </td>

            <td>

                作者</td>

            <td>

                <asp:TextBox ID="TextClass" runat="server"></asp:TextBox>

            </td>

        </tr>

        <tr>

            <td>

                出版社</td>

            <td>

                <asp:TextBox ID="TextMath" runat="server" ontextchanged="TextMath_TextChanged"></asp:TextBox>

            </td>

            <td>

                语文</td>

            <td>

                <asp:TextBox ID="TextChs" runat="server"></asp:TextBox>

            </td>

        </tr>

        <tr>

            <td class="style2">

                </td>

            <td class="style2">

            </td>

            <td class="style2">

                </td>

            <td class="style2">

                </td>

        </tr>

        <tr>

            <td colspan="2">

                <asp:Button ID="ButtonSubmit" runat="server" οnclick="ButtonSubmit_Click"

                    Text="提交" />

            </td>

            <td colspan="2">

                <asp:Button ID="ButtonBack" runat="server" οnclick="ButtonBack_Click"

                    Text="返回" />

            </td>

        </tr>

    </table>

    </div>

    </form>

</body>

</html>

8.3 删除操作代码如下

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="del.aspx.cs" Inherits="del" %>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

    <title>无标题页</title>

    <style type="text/css">

        .style1

        {

            text-align: center;

        }

    </style>

    <link href="StyleSheet.css" rel="stylesheet" type="text/css" />

</head>

<body>

    <form id="form1" runat="server">

    <div id="login">

    

    </div>

    <div id ="dow">

        <br />

        <br />

        <br />

        <br />

        <br />

        <br />

        <br />

        <br />

    <table style="width:100%;">

        <tr>

            <td class="style1" colspan="3">

                选择要删除的书号<asp:DropDownList ID="DropNo" runat="server" AutoPostBack="True"

                   DataTextField="uid" DataValueField="uid"

                    onselectedindexchanged="DropNo_SelectedIndexChanged"

                    DataSourceID="AccessDataSource1">

                </asp:DropDownList>

            </td>

        </tr>

        <tr>

            <td colspan="3">

                <asp:GridView ID="GridView1" runat="server" AllowSorting="True"

                    AutoGenerateColumns="False" DataKeyNames="uid" >

                    <Columns>

                        <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" />

                        <asp:BoundField DataField="uid" HeaderText="uid" ReadOnly="True"

                            SortExpression="uid" />

                        <asp:BoundField DataField="uname" HeaderText="uname" SortExpression="uname" />

                        <asp:BoundField DataField="usex" HeaderText="usex" SortExpression="usex" />

                        <asp:BoundField DataField="class" HeaderText="class" SortExpression="class" />

                        <asp:BoundField DataField="math" HeaderText="math" SortExpression="math" />

                        <asp:BoundField DataField="chs" HeaderText="chs" SortExpression="chs" />

                    </Columns>

                </asp:GridView>

            </td>

        </tr>

        <tr>

            <td>

                <asp:Label ID="LabelMsg" runat="server"></asp:Label>

            </td>

            <td>

                <asp:Button ID="ButtonOK" runat="server" οnclick="ButtonOK_Click" Text="确定" />

                <asp:Label ID="Label1" runat="server" Font-Bold="True" Text="删除成功"

                    Visible="False"></asp:Label>

            </td>

            <td>

                <asp:Button ID="ButtonBack" runat="server" Text="返回"

                    οnclick="ButtonBack_Click" />

            </td>

        </tr>

    </table>

    <asp:AccessDataSource ID="AccessDataSource1" runat="server"

        ConflictDetection="CompareAllValues" DataFile="~/App_Data/Student.mdb"

        DeleteCommand="DELETE FROM [grade] WHERE (([uid] = ?) OR ([uid] IS NULL AND ? IS NULL))"

        InsertCommand="INSERT INTO [grade] ([uid]) VALUES (?)"

        OldValuesParameterFormatString="original_{0}"

        SelectCommand="SELECT [uid] FROM [grade]">

        <DeleteParameters>

            <asp:Parameter Name="original_uid" Type="String" />

        </DeleteParameters>

        <InsertParameters>

            <asp:Parameter Name="uid" Type="String" />

        </InsertParameters>

    </asp:AccessDataSource>

    <asp:AccessDataSource ID="AccessDataSource2" runat="server"

        ConflictDetection="CompareAllValues" DataFile="~/App_Data/Student.mdb"

        DeleteCommand="DELETE FROM [grade] WHERE [uid] = ?"

        InsertCommand="INSERT INTO [grade] ([uid]) VALUES (?)"

        OldValuesParameterFormatString="original_{0}"

        SelectCommand="SELECT [uid] FROM [grade]">

        <DeleteParameters>

            <asp:Parameter Name="original_uid" Type="String" />

        </DeleteParameters>

        <InsertParameters>

            <asp:Parameter Name="uid" Type="String" />

        </InsertParameters>

    </asp:AccessDataSource>

    </div>

    </form>

</body>

</html>

8.3 更新操作代码如下

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="updata.aspx.cs" Inherits="updata" %>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

    <title>无标题页</title>

    <style type="text/css">

        .style1

        {

            text-align: center;

        }

        .style2

        {

            height: 25px;

        }

    </style>

    <link href="StyleSheet.css" rel="stylesheet" type="text/css" />

</head>

<body>

    <form id="form1" runat="server">

    <div id="login"></div>

    <div id ="dow">

        <br />

        <br />

        <br />

        <br />

        <br />

        <br />

        <br />

        <br />

        <br />

    <table style="width:100%;">

        <tr>

            <td class="style1" colspan="4">

                修改数据</td>

        </tr>

        <tr>

            <td>

                书号</td>

            <td>

                <asp:DropDownList ID="DropNo" runat="server" AutoPostBack="True"

                    onselectedindexchanged="DropNo_SelectedIndexChanged"

                    DataSourceID="AccessDataSource1" DataTextField="uid" DataValueField="uid"

                    Width="98px">

                </asp:DropDownList>

            </td>

            <td>

                书名</td>

            <td>

                <asp:TextBox ID="TextName" runat="server"></asp:TextBox>

            </td>

        </tr>

        <tr>

            <td>

                类别</td>

            <td>

                <asp:RadioButtonList ID="RadioSex" runat="server" RepeatDirection="Horizontal">

                    <asp:ListItem Selected="True">科技类</asp:ListItem>

                    <asp:ListItem>文学类</asp:ListItem>

                </asp:RadioButtonList>

            </td>

            <td>

                作者</td>

            <td>

                <asp:TextBox ID="TextClass" runat="server"></asp:TextBox>

            </td>

        </tr>

        <tr>

            <td class="style2">

                出版社</td>

            <td class="style2">

                <asp:TextBox ID="TextMath" runat="server"></asp:TextBox>

            </td>

            <td class="style2">

                价格</td>

            <td class="style2">

                <asp:TextBox ID="TextChs" runat="server"></asp:TextBox>

            </td>

        </tr>

        <tr>

            <td>

                 </td>

            <td>

                 </td>

            <td>

                 </td>

            <td>

                 </td>

        </tr>

        <tr>

            <td colspan="2">

                <asp:Button ID="ButtonSubmit" runat="server" οnclick="ButtonSubmit_Click"

                    Text="提交" style="width: 40px" />

            </td>

            <td colspan="2">

                <asp:Button ID="ButtonBack" runat="server" οnclick="ButtonBack_Click"

                    Text="返回" />

            </td>

        </tr>

    </table>

    <asp:AccessDataSource ID="AccessDataSource1" runat="server"

        DataFile="~/App_Data/Student.mdb"

        SelectCommand="SELECT [uid] FROM [grade]">

    </asp:AccessDataSource>

    </div>

    </form>

</body>

</html>

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("<script language= javascript>alert('新纪录添加成功,请单击“返回”回到主页面!');</script>");

    }

    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("<script language= javascript>alert('纪录更新成功,请单击“返回”回到主页面!');</script>");

        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();

    }

}

 

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页