资源描述
精选优质文档-倾情为你奉上 软件工程项目报告 -图书管理系统 班 级: 项目经理: 项目组成员: 模块负责人需求分析用例图代码设计数据库设计界面设计 目录第一章 绪论1.1 项目背景.1.2 编写目的.第二章 需求分析.2.1 系统功能需求分析.2.2 主要参与者.2.3 用例图.2.4 系统用例一览表2.5 用例规约2.7 时序图.第三章 系统设计3.1 系统实体总类图以及介绍3.2 相关数据库的设计3.2.1 E-R图3.2.2数据库的设计.3.3 主界面设计.3.3.1 登录/注册界面设计.3.3.2 管理员操作页面3.3.3 读者用户管理界面3.3.4 代码设计第四章 结束语.第一章 绪论1.1项目背景随着时代的发展,计算机技术越来越深入各行各业,为广大的用户提供了更为周到和便捷的服务。目前各行各业广泛使用专用系统,其用户群十分庞大,因此,设计开发好一个系统是十分重要。近年来,随着用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术的广泛应用,向用户提供的服务将越来越丰富,越来越人性化。本系统通过强大的计算机技术给图书管理人员和读者借、还书带来便利。本系统除了图书馆内管理的一般功能除外,还包括网上在线查询图书信息、查询本人的借阅情况。1.2编写目的本系统最终将达到减少了人力与管理成本,提高信息准确度,改进管理和服务,建立高效的平台,提高信息处理速度和利用率,系统设计优良,界面设计精美、快捷,人性化设计,后台管理功能好、效率高,更简便、信息化程度更高的图书管理流程。 第二章 需求分析2.1系统功能需求分析设计图书馆管理系统。此系统要达到方便读者查找图书,阅读图书,而且也要方便图书馆管理员的管理工作。管理员:对图书的订购、摆放、添加、删除、查询、统计、修改图书信息。 对读者的信息进行安全管理,所谓安全管理也就是对读者的所有注册信息进行保密管理,也就是只有此管理员可以获取和查看读者的信息(读者本人也可以查看),其他人则无权查看与修改。对读者的借还信息进行管理,即当读者借阅图书时将读者的借阅信息保存,同时将某图书被借阅的信息保存;当读者归还图书时可以及时将归还信息保存,实现消除该读者的借书信息,以方便读者继续借阅书籍。 读者进行借阅书籍时,只需要找到管理员即可获得自己想要阅览的书籍的信息,这样可以减少读者查询书籍的时间,而其余的工作则由管理员们来协调完成,这样提高了图书馆的工作效率,同时也让读者可以获得一个更好的读书方式。读者除了借阅书籍以外,还可以对自己的注册信息进行修改,但是一旦注册成功,则只能修改个人密码,其他人则无权修改。2.2主要参与者1、图书馆管理员:管理员要为每个读者建立借阅账户,并給读者发放不同类别的借阅卡(借阅卡可提供卡号、读者姓名),账户内存储读者的个人信息和借阅记录信息。持有借阅卡的读者可以通过管理员(作为读者的代理人与系统交互)借阅、归还图书,不同类别的读者可借阅图书的范围、数量和期限不同,可通过互联网或图书馆内查询终端查询图书信息和个人借阅情况,以及续借图书(系统审核符合续借条件)。2、借阅者:借阅图书时,先输入读者的借阅卡号,系统验证借阅卡的有效性和读者是否可继续借阅图书,无效则提示其原因,有效则显示读者的基本信息(包括照片),供管理员人工核对。然后输入要借阅的书号,系统查阅图书信息数据库,显示图书的基本信息,供管理员人工核对。最后提交借阅请求,若被系统接受则存储借阅纪录,并修改可借阅图书的数量。归还图书时,输入读者借阅卡号和图书号(或丢失标记号),系统验证是否有此借阅纪录以及是否超期借阅,无则提示,有则显示读者和图书的基本信息供管理员人工审核。添加读者2.3用例图 登 录删除读者修改图书修改个人信息添加图书 查看借阅信息删除图书查看图书数目删除借书信息系统维护添加借书信息查看读者信息 图一 管理员用例图 借阅图书预约借读图书注 册续借图书归还图书 查看图书数目查看借阅信息修改个人信息 图二 读者用例图2.4 用例描述用例名称:图书管理员 用例目的:完成登记注册、统计查询、借书、还书等操作;参与者:数据库管理员事件流:第一步:进入管理员登陆界面讨论区成员:选择相应的操作区系统:将管理员的增删改查权限显示出来即读者信息,图书信息,统计条件信息,读者情况,图书情况,统计结果; 加工名:录入新读者 加工编号:1.1 简要描述:将新的读者信息登记到读者信息表中 输入数据流:新读者数据,读者类别 输出数据流:有效读者信息 加工逻辑: 输入读者信息 选择读者类别 执行SQL语句,将完整的读者信息写入读者信息表 u 加工名:读者信息修改 加工编号:1.2 简要描述:修改指定的读者信息(卡号、已借书本数不可修改) 输入数据流:待修改的读者信息 输出数据流:修改后的读者信息 加工逻辑: 输入读者编号 执行SQL语句,从读者信息表中找出该读者的详细信息 修改除借书卡号和已借书本数以外的信息 执行SQL语句,将修改后的读者信息写入读者信息表中 u 加工名:读者信息删除 加工编号:1.3 简要描述:将已归还全部图书的指定读者信息从读者信息表中删除 输入数据流:待删除的读者信息,借书状况信息 输出数据流:待删除的读者信息 加工逻辑: 输入读者借书卡号 执行SQL语句,从读者信息表中找出该读者的详细信息 IF 该读者处于借阅状态的书本数0 THEN 提示“该读者还有未还的图书,暂时不能删除” ELSE 执行SQL语句,将该读者的信息从读者信息表中删除 ENDIF u 加工名:添加图书; 加工编号:2.1; 简要描述:将新购入的图书登记入库,便于读者随时借阅; 输入数据流:新图书信息,图书类别; 输出数据流:有效图书信息; 加工逻辑: 输入新图书信息 选择相应的图书类别 执行SQL语句,将新书信息写入图书信息表,记录登记人姓名,图书状态设置为“在库” 加工名:修改图书 加工编号:2.2 简要描述:将修改后的图书信息(图书编号和状态不能修改)重新写入图书信息表中; 输入数据流:待修改的信息; 输出数据流:修改的图书信息 加工逻辑: 输入图书编号 执行SQL语句,从图书信息表中查询该图书的详细信息 IF 图书状态为“借阅中” THEN 提示“图书不在库,不能修改” ELSE 执行SQL语句,将修改后的图书信息写入图书信息表 ENDIF u 加工名:删除图书 加工编号:2.3 简要描述:将报废的或已经遗失的图书从系统中删除 输入数据流:待删除信息,图书状态信息; 输出数据流:删除的图书信息 加工逻辑: 输入图书编号 执行SQL语句,从图书信息表中查询该图书的详细信息 IF 图书状态为“借阅中” THEN 提示“图书处在“借阅中”,暂时不能删除” ELSE 执行SQL语句,将该图书信息从图书信息表中删除 ENDIF u 加工名:查询图书 加工编号:2.4 简要描述:按设置的条件从图示信息表中查询满足条件的图书信息输入数据流:图书查询条件,图书信息; 输出数据流:图书查询结果 加工逻辑: 输入查询条件 执行SQL语句,从图书信息表中查询满足条件图书的详细信息 u 加工名:借书管理加工编号:3.1 简单描述:通过借书卡号和可借的图书编号完成图书借阅,并在相应的表中添加记录 输入数据流:读者信息,图书信息,操作员姓名,预借信息 输出数据流:已借数,借书信息,图书状态 加工逻辑: 执行SQL语句,分别从读者信息表和图书信息表读取指定的读者信息图书信息 IF 读者借书限额已满 THEN 提示“借书限额已满,暂时不能借阅新书” ENDIF IF 图书状态为“借阅中” THEN 提示“该书目前不在库,不能借阅” ENDIF IF 续借信息为真 THEN IF 该读者的续借限额未满 THEN 执行SQL语句,将借书信息表中相应记录的限还日期延长 返回借书界面,清空有关文本框 ELSE 提示“续借限额已满,不能再续借” ENDIF ELSE 执行SQL语句,读者信息表中该读者的已借书数增值 执行SQL语句,图书信息表中该书的状态更改为“借阅中” 执行SQL语句,将图书编号、书名、借书卡号、读者姓名、借书日期、限还 日期、当前操作员姓名等信息写入借书信息表中 返回借书界面,清空有关文本框 ENDIF u加工名:还书管理 加工编号:3.3 简单描述:归还读者借阅的图书,同时使读者的当前借书总数减值,使归还的图书状态为“在 库”,使相应的借书记录状态为“已还”。 输入数据流:预还信息,操作员姓名,罚金金额 输出数据流:已借数,图书状态,借书记录状态,还书信息 加工逻辑: 执行SQL语句,从借书信息表中查询指定的借书记录 IF 过期金额=0 AND 损坏罚金=0 THEN 执行SQL语句,向还书信息表中写入罚金信息为0的含操作员姓名的还书 记录 ELSE 执行SQL语句,向还书信息表中写入罚金信息不为0的含操作员姓名的还 书记录 ENDIF 执行SQL语句,将图书信息表中该图书状态更改为“在库” 执行SQL语句,将读者信息表中当前读者的当前借书总数减值 执行SQL语句,将借书信息表中相应的借书记录状态更改为“已还”加工名:图书总量统计 加工编号:4.1 简单描述:统计系统中的图书总量或按图书类别统计图书数 输入数据流:总量统计条件,统计项信息 输出数据流:图书总量信息 加工逻辑: IF 图书类别不为空 THEN 执行SQL语句,统计指定类别的图书数量 ELSE 执行SQL语句,统计所有图书的总量 ENDIF2.4 系统用例一览表 系统用例汇总模块用例名称用例ID说明管理员相关1.查看图书书目UC-011. 管理用户2. 管理图书2.系统维护UC-023.修改个人信息UC-034.添加图书UC-045.删除书目UC-056.修改书目UC-067.查看读者信息UC-078.查看借阅信息UC-089.添加读者UC-0910.删除读者UC-1011.添加借阅信息UC-1112.删除借阅信息UC-12读者相关13.查看借阅信息UC-1314.查看图书书目UC-141. 注册登录2. 借阅图书3. 修改个人信息15.预约借读图书UC-1516.修改个人信息UC-1617.借阅图书UC-1718.归还图书UC-1819.续借图书UC-1920.注册UC-202.5用例规约添加用户用例规约用例编号UC-09用例名称添加读者用例描述管理员增加读者的过程参与者管理员前置条件登录后置条件无基本路径1.参与者提出增加读者的请求2.系统显示增加读者界面3.参与者注册4.管理员分配权限类型5.系统保存用户数据非功能需求补充说明添加图书用例规约用例编号UC-06用例名称添加图书用例描述管理员增加图书的过程参与者管理员前置条件登录后置条件无涉众利益基本路径1.系统显示增加图书书目界面2.系统保存用户数据扩展点字段列表业务规则非功能需求补充说明查看借阅信息用例规约用例编号UC-08、UC-13用例名称查看借阅信息用例描述管理员或读者查看借阅信息的过程参与者管理员、读者前置条件登录后置条件无涉众利益基本路径1.用户登录2.系统显示借阅信息界面扩展点字段列表业务规则非功能需求补充说明查看读者信息用例规约用例编号UC-07用例名称查看读者信息用例描述管理员或读者查看读者信息的过程参与者管理员、读者前置条件登录后置条件无涉众利益基本路径1.用户登录2.系统显示读者信息界面扩展点字段列表业务规则非功能需求补充说明查看图书书目用例规约用例编号UC-01、UC-14用例名称查看图书书目用例描述管理员或读者查看图书书目的过程参与者管理员、读者前置条件登录后置条件无涉众利益基本路径1.用户登录2.系统显示图书书目界面扩展点字段列表业务规则非功能需求补充说明添加借阅信息用例规约用例编号UC-011用例名称添加借阅信息用例描述管理员添加借阅信息的过程参与者管理员前置条件登录后置条件无涉众利益基本路径1.管理员登录2.系统显示借阅信息界面扩展点字段列表业务规则非功能需求补充说明 注册用例规约用例编号UC-20用例名称注册用例描述用户注册的过程参与者读者前置条件无后置条件无涉众利益基本路径1.用户匿名进入系统2.系统注册登录界面3.注册成功后。系统保存数据信息并自动登录该用户。扩展点字段列表业务规则非功能需求补说明注册用户必须是本人真实信息! 2.6时序图图1:登陆时序图图2:注册更新个人信息时序图图3:添加图书时序图图4:修改图书时序图图5:删除图书时序图图6:系统维护时序图图7:添加读者时序图图8:删除读者时序图图9:查看借阅列表时序图图10:查看读者信息时序图图11:查看图书书目时序图图12:删除借书信息时序图图13:添加借书信息时序图图14:修改个人信息时序图图15:预约借阅图书时序图图16:归还图书时序图图17:借阅图书时序图图18:续借图书时序图 第三章 系统设计3.1系统实体总类图以及介绍系统边界类序号名称备注BO-1系统主界面登录、注册、修改个人密码BO-2管理员界面查看图书表、读者表、借还表,添加图书、读者,删除图书、读者,查找图书。BO-3读者界面查看图书列表、借阅列表,借阅图书,归还图书、续借图书,预借图书,查看及修改个人信息等。BO-4图书列表界面显示图书信息,添加、删除、修改、查询图书。BO-5读者列表界面显示读者信息,添加、修改、删除、查询读者。BO-6借还列表界面查看借还信息,续借图书等。BO-7修改个人信息界面修改个人信息系统实体类序号名称备注EN-1图书EN-2管理员唯一管理员EN-3读者系统控制类序号名称备注CON-1查看图书信息图书列表CON-2查看读者信息读者列表CON-3查看借还信息借还列表CON-4添加图书信息图书列表CON-5删除图书信息图书列表CON-6修改图书信息图书列表CON-7添加读者信息读者列表CON-8删除读者信息读者列表CON-9修改读者信息读者列表CON-10预订借阅图书借阅列表CON-11归还图书借阅列表CON-12续借图书借阅列表CON-13注册用户系统主界面CON-14修改个人密码系统主界面3.2相关数据库的设计经过对系统的需求分析,我们总结出,该系统数据库设计思路如下(以表格信息表示)。3.2.1 E-R图联系方式姓名密码管理员作者书名管理图书编码管理评论图书库存量联系方式读者借阅密码学号班级姓名出版社价格3.2.2数据库的设计 图书信息表管理员可以对读书进行增、删、改、查等操作,读者可以对读书进行借阅、预定借阅、续借、归还、查询等操作,以下是图书的基本信息。序号列名字段说明数据类型长度/位主键允许空1图书编号书籍编号int8是否2图书名称书籍名称nvarchar255否否3作者书籍作者nvarchar255否否4价格书籍价格varchar6否否5库存量书籍册数Int8否是6出版社书籍的出版社nvarchar255否否7评论书籍评价nvarchar255否是管理员信息表序号列名字段说明数据类型长度/位主键允许空1姓名管理员姓名nvarchar255是否2密码管理员密码Varchar16否否3联系方式管理员电话Int16否否读者信息表读者可以是校内的学生,也可以是校外人士,因此需要的身份验证方式不一样。以下是读者的信息表,以及具体详细。序号列名字段说明数据类型长度/位主键允许空1姓名读者姓名nvarchar255否否2学号若是学生,需要学号Int16是是3密码读者密码Varchar16否否4班级若是学生,需要班级nvarchar255否是5身份证号不是学生,需身份证号Varchar25是是6联系方式读者电话Int16否是数据库设计代码:表的设计:图书信息表use librarygocreate table bookinfo(bookNO int not null constraint pk_ISBN primary key,Bookname nvarchar(255) not null, bookname varchar(40) not null,pulishname nvarchar(255) not null,price varchar(6) not null,stock int not null,comment nvarchar(255)go读者信息表use librarygocreate table reader(readerNo int ,readerName nvarchar(255) not null, password varchar(16) not null,class nvarchar(255) ,ID number varchar(25),Telephone intCONSTRAINT readerPK PRIMARY KEY(readerNo)Go管理员信息表use librarygo CREATE TABLE Admin(adminName nvarchar(255) not null, password varchar(16) not null,telephone int not null, CONSTRAINT AdminPK PRIMARY KEY(adminName)Go存储过程:图书管理员增加图书的存储过程描述:输入:书名,作者,出版社,ISBN号,价格 ,库存 输出:图书编号 过程:向表中插入书名,作者,出版社,ISBN号,价格create PROCEDURE addbookInfobookNo char(20),bookname nvarchar(255),author nvarchar(255),pulishname nvarchar(255),price money varchar(6) ,stock int,comment nvarchar(255)asInsertbookInfo values(bookNo,bookName,author,pulishname,price,stock,comment )图书管理员修改图书的存储过程描述:输入:图书编号,书名,作者,出版社,图书类别,ISBN号,定价,库存,是否可借过程:根据图书编号修改表中的书名,作者,出版社,图书类别,ISBN号,定价,库存,是否可借CREATE PROCEDURE updatebookInfoclassname nvarchar(255),bookName nvarchar(255),author nvarchar(255),pulishname varchar(255),price money varchar(6),stock int,bookNo output,asbeginupdate bookInfoset classname=classname, bookNo=bookNo, bookName=bookName, author=author, pulishname=pulishname, price=price, stock=stock, where ISBNNo=ISBNNoend图书管理员删除图书的存储过程描述:输入:图书编号过程:根据图书编号删除表中该图书的信息create proc DeletebookbookNo intasbegindelete from bookwhere bookNo=bookNoEnd图书管理员删除读者信息的存储过程描述:输入:读者号过程:根据输入的读者号删除表中该读者的信息create proc DeletereaderreaderNo intasbegindelete from bookwhere readerNo=readerNoend3.3主界面设计3.3.1登陆/注册界面设计人机界面设计 设计概述 人机界面设计是接口设计的一个重要的组成部分。对于交互式系统来说,人机界面设计和数据设计,体系结构设计及过程设计一样重要。 图书管理系统是基于对话框设计的,用到了三个对话框,分别为登录对话框,书库管理员对话框和借阅人对话框。 在用户登入时验证用户身份,如果是合法用户,则根据数据库中记录的用户权限转到管理员界面或者借阅人界面。 图1 登陆界面打开登录界面输入用户名和密码,点击登录进入图书管理界面。如果没有请注册账户图2 注册界面3.3.2管理员操作界面 选择“图书维护”菜单中的“书的ID”菜单,出现如图所示的输入图书信息界面。 输入信息后,单击“图书查询”按钮 图3 总管理界面图4 图书管理界面输书的书名或书的ID点击“图书查询”图5 借还管理界面1.借书 选择“图书流通”菜单中的“借书”菜单,。 输入借阅信息后,单击“借书”按钮。 2. 还书 选择“图书流通”菜单中的“还书”菜单, 输入借阅信息后,单击“还书”按钮3.3.3 读者用户管理界面图6 读者用户管理用户图7 修改密码界面编辑要修改的信息,单击“保存”按钮图8 读者界面点击左边的选框可以查询到你要查询的信息系统响应时间 对于用户的各种操作请求应尽快给出响应,响应时间应控制在1s左右。 出错信息处理 对于用户不符合要求的输入,系统会给出错误提示,并告知其错误原因。3.4部分代码:添加图书的代码:using System.Data.SqlClient;using System.Data;public partial class Add : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) protected void Button1_Click(object sender, EventArgs e) string constr = server=.; database=library; trusted_connection=yes; SqlConnection con = new SqlConnection(constr); SqlCommand cmd = new SqlCommand(con); cmd.Connection = con; cmd.CommandText = addbookInfo; cmd.CommandType = CommandType.StoredProcedure; SqlParameter sp1 = new SqlParameter(bookname, SqlDbType.NVarChar, 255); sp1.ParameterName = nvarchar; sp1.Value = bookname.Text; cmd.Parameters.Add(sp1); SqlParameter sp2 = new SqlParameter(author, SqlDbType.NVarChar ,255); sp2.ParameterName =author; sp2.Value = author.Text; cmd.Parameters.Add(sp2); SqlParameter sp3 = new SqlParameter(pulishnam, SqlDbType.NVarChar, 255); sp3.ParameterName = pulishnam; sp3.Value = pulishnam.Text; cmd.Parameters.Add(sp3); SqlParameter sp4 = new SqlParameter(price, SqlDbType.VarChar,6); sp4.ParameterName = price; sp4.Value = FormatString(price.Text); cmd.Parameters.Add(sp4); SqlParameter sp5 = new SqlParameter(stock, SqlDbType.Int); sp5.ParameterName = stock; sp5.Value = int.Parse(stock.Text); cmd.Parameters.Add(sp5); SqlParameter sp7 = new SqlParameter(comment, SqlDbType.NVarChar,255); sp7.ParameterName = comment; sp7.Value = System.DateTime.Now.ToString(); cmd.Parameters.Add(sp7); SqlParameter sp6 = new SqlParameter(bookNO , SqlDbType.Int); sp6.ParameterName = bookNO ; sp6.Direction = ParameterDirection.Output; cmd.Parameters.Add(sp6); con.Open(); cmd.ExecuteNonQuery(); con.Close(); int id = int.Parse(sp6.Value.ToString(); if (id 0) Response.Write(alert(恭喜你,添加成功,感谢您的参与!);parent.location=index.aspx); return; else Response.Write(alert(对不起,操作出现错误,请返回!);parent.location=index.aspx); public string FormatString(string str) str = str.Replace( , ); str = str.Replace(, >); str = str.Replace(n.ToString(), ); return str; nvarchar(255) not null, varchar(16) not null,telephone int not null,管理员登录代码:using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Data.SqlClient;using System.Data;public partial class Admin : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (!IsPostBack) /if (Request.Cookiesuser != null) / / string User = Request.Cookiesuser.Value; / Sessionu = User; / Response.Write(window.location=index.aspx); / protected void Button1_Click(object sender, EventArgs e) string adminName = username.Text; string password = userpwd.Text; string constr = server=.;database=newmessage;trusted_connection=true; SqlConnection con = new SqlConnection(constr); SqlCommand cmd = new SqlCommand(); cmd.Connection = con; /cmd.CommandText = select * from Admin where adminName= + username + , password= + userpwd + ; cmd.CommandText = select count(*) from Admin where adminName=Name and password=Pass; SqlParameter sp = new SqlParameter(); sp.ParameterName = Name; sp.Value = username.Text; SqlParameter sp2 = new SqlParameter(); sp2.ParameterName = Pass; sp2.Value = userpwd.Text; cmd.Parameters.Add(sp); cmd.Parameters.Add(sp2); con.Open(); int count = (int)cmd.ExecuteScalar(); if (count = 0) Response.Write(alert(用户名或密码错误); return; else Sessionu = user; Response.Write(alert(登录成功); Response.Write(window.location=index.aspx); con.Close(); 修改图书的代码:create table bookinfo(bookNO int not null constraint pk_ISBN primary key,Bookname nvarchar(255) not null, bookname varchar(40) not null,pulishname nvarchar(255) not null,price varchar(6) not null,stock int not null,comment nvarchausing System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Data.SqlClient;using System.Data;public partial class message : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (!IsPostBack) gv_bind(); protected void gv_bind() string constr = server=.;database=library;trusted_connection=yes; SqlConnection con = new SqlConnection(constr); SqlCommand cmd = new SqlCommand(); cmd.Connection = con; cmd.CommandText = select * from bookinfo ;/SQL 文本命令 con.Open(); /打开连接数据库 SqlDataReader sdr = cmd.ExecuteReader();/读取表中的一行数据,是所运行sql语句,将结果存到了sdr里 GridView1.DataSource = sdr; GridView1.DataBind(); /数据绑定 con.Close(); protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) GridView1.EditIndex = e.NewEditIndex; gv_bind(); protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) GridView1.EditIndex = -1; gv_bind(); protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) /找到修改后的值 string updatename = (TextBox)GridView1.Rowse.RowIndex.FindControl(TextBox1).Text; string updatestatus = (DropDownList)GridView1.Rowse.RowIndex.FindControl(DropDownList1).SelectedItem.ToString(); string con = server=.;database=photo;trusted_connection=true; SqlConnection scn = new SqlConnection(con); scn.Open(); SqlCommand scm = new SqlCommand(); scm.Connection = scn; scm.CommandText = update category set c_name=updatename, status=updatestatus where id=sid; int i = (int)scm.ExecuteNonQuery(); if (i 0) Response.Write(alert(修改图书成功); /更新数据库 string sid = GridView1.DataKeyse.RowIndex.Value.ToString(); /Response.Write(id); protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) gv_bind(); string sid = GridView1.DataKeyse.RowIndex.Value.ToString(); string con = server=.;database=ph
展开阅读全文