高一下册信息技术 信息系统的数据输入 逐字稿-3,242字
师:各位同学,大家好!今天我们来学习信息系统的数据输入。上一节课,我们已经学习了数据库的设计。这里有一个数据表叫booktable,它有三个字段,其中第一个ID是自动编号,无需人工操作。我们需要插入或更新的是后面两个字段:ISBN和书名。今天这节课,我们要学习如何通过网页结合Python程序,将图书信息输入到这两个字段中。大家一定要记住这两个字段名:ISBN和书名。
在日常信息输入中,不能让用户直接接触数据库,这涉及两个问题:一是安全性无法保证;二是用户体验不佳。所以在日常信息化系统应用中,我们通常借助Web页面来输入信息。
今天这节课围绕图书数据录入项目,要完成两个任务:一是制作图书录入的交互界面,二是将数据录入到数据库。下面先看看整个制作效果。
大家看这个视频,我输入了一本叫《山海经》的书。通过这个小视频快速演示一下:在录入界面输入数据,点击提交,数据就通过后台Python程序写入数据库,然后可通过Web页面检索,能看到数据库当前有两本书。
整个系统架构是这样的:前端用html语言搭建Web页面,将数据提交给后台Python程序进行信息处理,Python程序中使用SQL语句将数据插入access数据库。
首先看第一个任务:制作图书录入的交互界面。这里使用html语言创建一个静态网页,页面中有一个大的表单form,里面有两个输入框。第一个输入框名为TB_ISBN,用于用户输入图书的ISBN信息;第二个输入框用于输入图书名字。输入完毕后,点击“录入”,数据就会提交给后台Python程序。
值得一提的是,在Web页面向服务器提交程序主要通过表单,表单标签是成对出现的form。表单里有两个重要属性:第一个是action属性,action等于什么,就意味着数据将提交给哪个程序;第二个是method方法,表单提交数据有两种方法,get和post。get方式传递数据时,会把数据直接写在地址栏后面,通过问号连接,用户能在地址栏看到传出的数据;post方式传递数据比较隐蔽,在地址栏看不到。出于安全性考虑,我们往往选择post方法提交数据。
表单里能让用户输入数据的控件有很多种,刚刚案例中只用了文本框。其实表单控件还有密码框,输入数字时以小黑点显示,看不到明文;单选框,比如让用户选择性别;复选框checkbox,可进行多选;还有列表、按钮等。
表单里的按钮有三种类型:type等于button是普通按钮;我们之前用的提交按钮属于submit类型,点击它就能把数据提交到后台;还有一种reset类型的按钮,在之前页面没出现过,它主要用来清空表单里所有数据,比如填错了,按一下reset,所有控件内容都会清空。
接下来是任务一中的一个活动:当设置好输入框后,若没有提示信息,用户输入可能非法或不符合要求。我们可以在表单里添加适当录入提示,比如希望用户输入6 - 16位密码,其中包含英文、区分大小写、数字或常用符号,就可以在输入框后面加一列,附上这些提示明文,这样用户输入时就有参考,不会输入不符合规范的数据。同学们制作录入表单时要注意这点。
下面完成第二个大任务:前面做的是前端Web页面,它只负责收集数据并发送给后台Python程序,具体处理由任务二完成,要把用户在表单里输入的数据写入数据库。我们的数据库是access,上节课讲过有一个单独的access文件,现在要通过Python语句将用户在Web页面输入的数据插入到这个access文件中。
首先连接图书数据库,分四步:第一步,使用pyodbc作为连接应用程序和数据库的管道,通过import pyodbc导入这个别人开发好的、能在Python和access之间建立连接的库;第二步,通过语句给dbfile变量赋值数据库文件的地址,地址不能错,否则Python程序找不到数据库;第三步,按照规范语句建立连接,除了最后的DBfile是变量,用来指定数据库文件位置,其他像driver等都是驱动程序提供的固定格式,大家写的时候可参考复制粘贴;第四步,数据连接建好后,将连接赋予游标对象,因为具体操作数据库由游标对象完成,通过cursor = 连接.cursor()方法获得操作数据库的cursor对象。到这四步完成,游标中还没有任何数据,只是一个空游标,后面会讲如何操作数据库。这四步连接数据库的代码教材上也有,大家如果记不住,特别是连接的长语句,照着教材打就行。