【问题描述】xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
请利用表9-1-8所示的学生信息表students_Info,筛选出年龄小于等于15岁的同学的姓名及性别。xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
表9-1-8 学生信息表xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
续表xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
输出结果:xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
[('陶培豪',15),('樊慧琳',14),('付小青',14),('高清源',15),('龚涛',14),('何虹',15),('贺婉云',15),('胡泓吉',15)]xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
【题前思考】xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
根据问题描述,填写表9-1-9。xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
表9-1-9 问题分析xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
【解题思路】xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
要查询数据,首先要连接给定的数据库,然后使用数据库中对应的数据表,通过select命令查询出需要的信息。xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
【程序代码】xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
【代码分析】xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
①:要使用sqlite3这个模块,必须先创建一个Connection对象,它代表数据库。xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
②:这条语句首先是筛选出年龄小于等于15岁的学生,然后选择学生的姓名和年龄,最后以迭代器的形式来输出结果。查询过程如图9-1-2所示。xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
图9-1-2 SQL查询过程xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
【优化提升】xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
要在执行select语句后获取数据,可以把游标作为iterator(迭代器),然后调用它的fetchone( )方法来获取一条匹配的行,也可以调用fetchall( )来得到包含多个匹配行的列表。原程序采用fetchone( )方法改写后如下:xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
import sqlite3xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
con=sqlite3.connect('students.db')xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
cur=con.cursor( )xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
cur.execute("select name,age from students_Infor where age<=15")xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print(cur.fetchall( ))xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
con.close( )xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
【技术全貌】xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
sqlite3的where子句用于指定从一个表或多个表中获取数据的条件。如果满足给定的条件,即为真(true)时,则从表中返回特定的值。可以使用where子句来过滤记录,只获取需要的记录。where子句不仅可用在select语句中,也可用在update、delete语句中,我们还可以使用比较或逻辑运算符指定条件,如>、<、=、like、not。select语句的where子句的语法见表9-1-10。xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
表9-1-10 select语句的where子句的语法xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
续表xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
xq4100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库