Python 作业4+实验三
问题:
练习:MySQL数据库编程
题目描述:创建一个测试数据库test.db,该数据库中包含一张teacher表,该数据表含有六个字段教工号tid、姓名tname、性别tsex、年龄tage、职称ttitle。
提示:
- 在网址MySQL :: Download MySQL Community Server上下载mysql数据库压缩文件mysql-8.0.28-winx64.zip(或者老师直接提供)。解压该压缩文件,并修改目录为mysql8,内含有bin和data目录,将mysql8目录复制到目录D:\mysql。
- 以管理员身份打开cmd,进入D:\mysql\mysql8\bin,创建db数据库,创建teacher数据表,输入数据记录如图5-1所示。(操作参见数据库ppt)
图5-1
(3)以此数据库为基础,编写Python代码分别完成数据添加、删除、修改和查询操作。
通过SQL语句insert、delete、update、select分别实现对应数据操作功能。Python操作MySQL数据库程序代码的测试结果如下图5-2所示。
第一步——Mysql操作:
mysql> use test
Database changed//创建表格
mysql> create table teacher(
-> tid char(7) not null,//not null 表示tid的值不能为空
-> tname varchar(50) not null,
-> tsex char(2) not null,
-> tage int not null,
-> ttitle varchar(50) not null,
-> primary key (tid)
-> )engine=innoDB default charset=utf8;
Query OK, 0 rows affected (0.01 sec)//查询表格的结构
mysql> insert into teacher values('2021001','张珊','女',32,'讲师');//插入数据
Query OK, 1 row affected (0.00 sec)第二步——Python环境操作MySQL数据库:
import pymysql dp=pymysql.connect(host='localhost',user='root',password='117503',database='test')#连接数据库 cur=dp.cursor()#创建游标对象cur #查询 cur.execute("select * from teacher")#游标对象执行SQL语句,将Python操作端和MySQL数据库联系起来 results1 = cur.fetchall()#通过游标对象的fetchall()方法获取游标中的所有数据(这里是一个元组) print(results1)#输出获得的数据 #增加一行 sql = "insert into teacher values ('%s','%s','%s',%s,'%s')" % ("2001024","王立军","男",32,"讲师") cur.execute(sql) dp.commit() cur.execute("select * from teacher") results2=cur.fetchall() print(results2) #删除一行 sql="delete from teacher where tid='2001024';" cur.execute(sql) dp.commit() cur.execute("select * from teacher") results3=cur.fetchall() print(results3) #修改一行的数据 sql="update teacher set tname='张san',ttitle='副教授' where tid='2021001';" cur.execute(sql) dp.commit() cur.execute("select * from teacher") results4=cur.fetchall() print(results4) dp.close()
注释:Python环境下,先要导入pymysql模块(我用的pycharm,可以直接搜索pymysql并导入),然后连接数据库就行了,注意,Python端对表格的操作和MySQL服务器里操作表格的格式大致相同,注意,Python端修改、删除、增加表格数据都要有dp.commit(),输出结果如问题图二所示
Python 作业4+实验三相关推荐
- 基于python的文件加密传输系统 毕业论文_20183411 李丞灏 2020-2021 《python程序设计》 实验三 加密传输文件 实验报告...
20183411 李丞灏 2020-2021 <python程序设计> 实验三 加密传输文件 实验报告 课程:<Python程序设计> 班级: 1834 姓名: 李丞灏 学号: ...
- python编译程序输入上网时间并计算上网费用 计算方法_同济大学Python程序设计基础 实验三:选择结构...
实验三 第一题 1.求一元二次方程的根. 要求:输入一元二次方程的三个系数a.b.c,根据系数值,可得出如下三种根: (1)△>0,两个实根 (2)△=0,重根,即相同根 (3)△<0,无 ...
- python程序设计报告-20183215 实验三《Python程序设计》实验报告
20183215 2019-2020-2 <Python程序设计>实验三报告 课程:<Python程序设计> 班级: 1832 姓名: 董振龙 学号: 20183215 实验教 ...
- python的实验报告怎么写_学号:20191221,《python实验设计》实验报告三
学号 2019-2020-2 <Python程序设计>实验三讲述 课程:<Python程序设计> 班级: 1912 姓名: 何应霆 学号:20191221 实验西席:王志强 实 ...
- python语言程序设计实验教程答案实验三_20182204 实验三《Python程序设计》实验报告...
20182204 <Python程序设计>实验三报告 课程:<Python程序设计> 班级:1822 姓名:20182204zwp 学号:20182204 实验教师:王志强老师 ...
- python实验三答案_20192116 实验三《Python程序设计》实验报告
20192116 2019-2020-2 <Python程序设计>实验三报告 课程:<Python程序设计> 班级: 1921 姓名: 饶欢 学号:20192116 实验教师: ...
- 201671010434王雯涵--实验三:作业互评与改进
课程名 <软件工程> 作业要求 实验三 作业互评与改进 我的课程目标 理解软件工程各阶段文档的作用与意义,了解软件工程文档的国家标准及其规范 实验内容 任务一: 评论1:https://w ...
- 201671010411.巩定定 实验三.作业互评与改进
课程名称 2016西北师范大学计算机科学与工程学院软件工程 作业要求 实验三作业互评与改进 任务一 G梓妤 评论博客:https://www.cnblogs.com/buaaguzhanpeng/p/ ...
- python文件操作实验报告_20193120 实验三《Python程序设计》实验报告
实验三 (一)实验内容 创建服务端和客户端,服务端在特定端口监听多个客户请求.客户端和服务端通过Socket套接字(TCP/UDP)进行通信. (二)实验要求 (1)创建服务端和客户端,选择一个通信端 ...
- ArcGIS实验教程——实验三十六:ArcGIS Python脚本的巧妙使用
ArcGIS实验视频教程合集:<ArcGIS实验教程从入门到精通>(附配套实验数据)> 文章目录 一.ArcGIS脚本简介 二.Python脚本与ArcPy 三.Python窗口 四 ...
最新文章
- 完了!TCP出了大事!
- springmvc十九:springmvc表单标签
- 把事务封装成类似Serializable用法的特性
- oracle数据库元数据SQL查询
- DSA签名算法 - Java加密与安全
- 遍历HashMap的最佳方法
- #if DEBUG vs. Conditional(“DEBUG”)
- ui设计卡片阴影_UI设计形状和对象基础知识:阴影和模糊
- Java工程师修炼之路
- 会议交流 | IJCKG 2021 日程表(北京时间)
- php array_flip() 删除数组重复元素——大彻大悟
- mysql序列号生成_超详细的mysql数据库GTID介绍—概念、优缺点、原理、生命周期等
- 一行代码画一个数据分析图(lzdb 库)
- Android Studio新建项目出错如何解决
- container-coding-codec
- Video Classification with Channel-Separated Convolutional Netwroks 论文阅读
- 基于单片机的多功能电子密码锁系统设计
- 利用selenium携带cookies实现免登录
- 划分训练集、测试集,制作自己的数据集
- 微博爬虫python_微博爬虫 python
热门文章
- Java编写程序获取验证码
- 新巴巴运动网项目需求书_巴巴姆少儿英语项目介绍(613岁)
- 台达触摸屏和vfd-m变频器通讯控制监视程序 使用modbus rtu通讯方式,在触摸屏可以直接控制变频器
- 尚硅谷-Promise
- 易优CMS:arcpagelist 瀑布流分页列表
- 创建对象和实现原型继承的几种方式
- x570支持Linux系统吗,苹果中国官网调整:Mac Pro正式支持选配AMD W5500X显卡
- 苹果系统中国日历服务器,ios日历中国节日不见了(2021年苹果日历订阅地址)...
- 八年开心网,它的是非功过都在这里了
- vue中对鼠标划过事件处理方式