(共17张PPT)
第2单元 信息系统的集成
第1单元 信息系统的组成与功能
第3单元 信息系统的设计与开发
第4单元 信息系统的安全
第5单元 信息社会的建设
信息技术
(必修2)
3.4 信息系统的数据处理
学习目标
1.能够描述信息系统中的数据处理流程。
2.理解信息系统通过程序实施自动化数据处理的方式。
信息系统的数据处理包括输入、查询、统计等。我们将围绕“借阅图书功能设计”项目展开学习,了解信息系统收集用户信息、根据用户输入信息实施信息处理的过程。根据信息系统的数据处理过程,我们可以将“借阅图书功能设计”这一项目划分为三个任务,分别为“用户登录功能设计”“图书查询功能设计”和“图书预约功能设计”。
这节课我们主要设计并实现用户登录功能。下面,我们一起观察用户登录页面,在用户登录页面,用户登录需要哪些信息?
新课导入
查询到该用户
该用户输入的密码是否与存储的密码一致
任务一 用户登录功能设计
※ 活动1 设计用户登录流程
从登录页面获取用户输入的信息
建立数据连接
是否有与用户输入的用户名匹配的数据
提示:无此用户!
判断查询密码和输入的密码是否一致
提示:密码错误!
保存学号进入新页面
开始
结束
是
否
是
否
活动2 编写用户登录判断程序
session可译为会话,可以用来保存用户的状态值。当用户打开浏览器并产生一个session之后,服务器将为用户保存这个session,直到这个session失效或用户关闭浏览器为止。
session
Web开发中,常利用session进行跨页面参数传递。
例:
#用户登录成功进定义session变量,保存用户编号studentNumber
request.session[‘userID’]=studentNumber
#在需要使用用户编号的页面调用session变量,该变量值通常作为数据库查询的关键字
studentNumber=request.session.get(‘userID’)
str_Select=“SELECT * FROM [学生表] WHERE [学号]=‘%s’”%studentNumber
SELECT命令用于在数据表中查询记录。其基本格式为:
SELECT字段1,字段2 ......FROM表名
WHERE条件
【示例1】从学生表中查询年龄大于16岁的学生的学号、姓名,性别等信息,查询语句为:
SELECT 学号,姓名,性别 FROM 学生表 WHERE 年龄>16
查询命令(SELECT)
【示例2】查询所有女生的学号和姓名,查询语句为:
SELECT 学号,姓名 FROM 学生表 WHERE 性别=‘女’
【示例3】查询学生表中年龄大于16岁的所有男生的学号和姓名,查询语句为:
SELECT 学号,姓名 FROM 学生表
WHERE 年龄>16 AND 性别=‘男’
【示例4】查询学生表中年龄小于16岁或性别为“男”的学生信息,查询语句为:
SELECT * FROM 学生表
WHERE 年龄<16 OR 性别=‘男’
SELECT 语句中的“*”表示数据表中的所有字段。
定义查询借阅记录的事件
建立数据连接
根据学号查询学生的图书借阅记录
将数据传递给show_new.html文件显示
※ 活动1 根据用户登录信息自动查询借阅信息
任务二 图书查询功能设计
单击按钮查找图书
获取其书名、出版时间等查询条件
根据输入的书名、出版时间查找图书
活动2 根据输入数据查询图书
学生在借阅图书之前,要查阅图书的相关信息,确定哪些图书是自己需要的。在查询时,查询者常常会输入多个条件,以便能比较准确地查找图书。
模糊查询主要是指在SQL查询语句中用特殊的符号来代替零个、一个或多个任意的字符,以查找部分信息准确、部分信息不准确的数据。“%”和“_”是SQL语言的特殊符号。“%”表示零个或任意多个字符,“_”表示一个任意的字符。
如:“李%”表示所有姓李的学生,“%李%”表示姓名中含有“李”的所有同学,“李 ”表示姓名中一共有两个字,其中第一个为“李”的所有同学。
注意:在Python中,%为转义符。要输出“%”,不能直接输入“%”,而是应该输入“%%”。
模糊查询SELECT WHERE LIKE
连接数据库,创建游标
获取预约图书的ISBN
更新图书数量
将预约信息插入借阅表
关闭游标和连接
※ 活动1 预约图书并更新可借阅图书数量
任务三 图书预约功能设计
UPDATE命令用于更新数据表中的数据,其格式为:
UPDATE 表名
SET列名=值
WHERE 条件
WHERE条件为可选项,当WHERE条件存在时,UPDATE将修改指定表中符合条件的记录;当WHERE条件不存在时,将修改指定表中的所有数据。
UPDATE
由于种种原因,用户发现有些已经成功预约的图书并不是自己需要的,此时需要取消预约。取消预约是预约操作的逆操作(图书表中的图书数量要增加1且借阅表中的记录需要删除)。
思考:你可以试着参考预约程序去编写取消预约的相关代码吗?
活动2 撤销预约功能设计
在SQL语句中,DELETE命令用于删除数据表中的数据,其格式为:
DELETE
FROM 表名
WHERE 条件
其中,WHERE条件为可选项,当WHERE条件存在时,DELETE将删除表中符合条件的记录;当WHERE条件不存在时,将删除表中所有数据。
注意:删除表中所有数据后,表仍然存在,但表中数据不可恢复。
DELETE
练习巩固
1. ( )命令用于在数据表中查询记录。
A.session B.select C.update D.Delete
2.(多选)在模糊查询中 % 可以代替的是( )。
A.零个字符 B.某个特定字符 C.一个任意的字符 D.任意多个字符
3.(单选)( )命令用于更新数据表中的数据。
A.UPDATE B.SELECT C.DELETE D.INSERT
4. 查询学生表中年龄小于16岁或性别为“男”的学生信息,请写出查询语句。
5.在SQL语句中,DELETE命令用于删除数据表中的数据,其格式为:
B
AD
A
SELECT * FROM 学生表 WHERE 年龄<16 OR 性别=“男”
DELETE FROM 表名 WHERE 条件
课堂小结
1、session和查询命令(select)
2、图书查询功能设计和图书预约功能设计的数据处理过程。
3、模糊查询、UPDATE命令和DELETE命令。