python修改数据库表结构_python中数据库的相关操作-pymysql
python3中可以使用库pymysql
数据准备:
搭建一个数据库,我是在docker下搭建的Mysql(端口号是3306,账号是root,密码123456)
建立数据库test_db,表TB_Student,表结构如下:
TB_Student
需要做的操作如下:
在上述名单中,ID是连续编号的数字。现在需要按照班级给他们设一个新的序号(Seq),每个班级从1开始连续编号,输出如下表所示的结果,请写成相应的sql语句或者代码。
增加一列后的表TB_Student
以下是关于pymysql的相关知识
1.先导入库名
import pymysql
可以在pycharm中下载相应的包
2.连接数据库
pymysql.connect(host="localhost",port=3306,database='test_db',user='root',password='123456')
说明:
host是数据库的地址,因为我的数据库就在本机,所以就是localhost
port是在docker建立mysql的时候设置的端口(注意端口号非字符串,不用引号)
database要使用到的数据库名
user和password是连接mysql的账号、密码
3.获取游标
#使用cursor()方法创建一个游标对象 cursor
cursor = db.cursor()
4.执行SQL查询语句
说明:
声明游标后,可以反复调用cursor.execute()去执行不同sql语句
查出来的结果是通过cursor.fetchall() 或者 cursor.fetchone()获取到的,是元组类型
#使用execute()方法执行 SQL 查询
cursor.execute("select count(*) from TB_Student;")
#获取表里所有内容
result_count = cursor.fetchall()
#获取单条数据
result_count = cursor.fetchone()
5.执行修改语句
注意:若有修改数据库的操作,需要执行commit操作,才可以生效,才可以真正把修改更新到数据库。
#连接完数据库并不会自动提交,所以需要手动 commit 你的改动
db.commit()
以上是所需要的只是,所以最开始的问题的代码如下:
#!/usr/bin/python3
import pymysql
#连接数据库
#cursorclass = pymysql.cursors.DictCursor变成字典作为元素的列表,例如[{'count(*)': 13}]
db = pymysql.connect(host="localhost",port=3306,database='test_db',user='root',password='123456',
cursorclass = pymysql.cursors.DictCursor)
#通过连接对象获取游标
cursor = db.cursor()
#查询表TB_Student行数(在元组中)
#使用execute()方法执行 SQL 查询
cursor.execute("select count(*) from TB_Student;")
#获取表里所有内容
result_count = cursor.fetchall()
#输出结果为[{'count(*)': 13}],'count(*)'是select语句里需要查询的字段
print(result_count)
#result_count[0][0]才是真正的表TB_Student行数
print(result_count[0]['count(*)'])
#为表TB_Student增加字段seq
#cursor.execute("alter table TB_Student add seq int;")
#i是列数
#j是插入的数
j=0
n=5
for i in range(1,result_count[0]['count(*)']+1):
#seq的规律是(1234512345612345..)
#当到第6、12、19列需要从新从1开始(j赋值为1)
if j < n:
j = j+1
else:
n = n+1
j=1
print("i:"+str(i)+" j:"+str(j))
sql1="update TB_Student set seq=%s where id=%s"%(j,i)
cursor.execute(sql1)
cursor.execute("select * from TB_Student;")
r1=cursor.fetchall()
print(r1)
#连接完数据库并不会自动提交,所以需要手动 commit 你的改动
db.commit()
db.close()
python修改数据库表结构_python中数据库的相关操作-pymysql相关推荐
- 第100篇博文纪念 | C# 根据数据库表结构生成DOC数据库文档
一.目标 下图是我们要实现的目标: 二.实现 原理非常简单,首先制作样式模版,可以参照文章2,将排版好的Word另存为html,然后复制粘贴到aspx页面中,然后从数据库读取表以及字段信息,动态的插入 ...
- python3数据库表关联_Django中数据库操作|python3教程|python入门|python教程
https://www.xin3721.com/eschool/pythonxin3721/ 一.数据库中时间类型 1.三种时间类型:DateTimeField.DataField.TimeField ...
- python数据库模糊查询_python中数据库like模糊查询方式
python中数据库like模糊查询方式 在Python中%是一个格式化字符,所以如果需要使用%则需要写成%%. 将在Python中执行的sql语句改为: sql = "SELECT * F ...
- python中table表结构_python中的简易表格prettytable
安装:pip install PrettyTable 普通表格 from prettytable import PrettyTable table = PrettyTable(['编号','云编号', ...
- MySQL数据库的终结_python中数据库的操作终结
1.什么是数据库: 数据库是按照数据结构来组织存储和管理数据的仓库 2.mysql用户设置: (1).进入数据库:mysql -u root -p 然后输入密码:xxxxx (2).里面有个user表 ...
- h2数据库表结构转mysql_H2数据库使用 详解
H2数据库介绍 常用的开源数据库:H2,Derby,HSQLDB,MySQL,PostgreSQL.其中H2,HSQLDB类似,十分适合作为嵌入式数据库使用,其它的数据库大部分都需要安装独立的客户端和 ...
- php mysql 查询数据库表结构_mysql查询数据库下的表结构?
方法:1.使用DESCRIBE命令以表格的形式展示表结构,语法"DESCRIBE 表名;":2.使用"SHOW CREATE TABLE"命令以SQL语句的形式 ...
- python修改文件的方法_python中文件操作实现全文或单行替换方法
python修改文件时,使用w模式会将原本的文件清空/覆盖.可以先用读(r)的方式打开,写到内存中,然后再用写(w)的方式打开.替换文本中的taste 为 tasting Yesterday when ...
- python给视频加背景音乐_python中加背景音乐如何操作
在python中加背景音乐的方法: 1.导入pygame资源包: 2.修改音乐的file路径: 3.使用init()方法进行初始化: 4.使用load()方法添加音乐文件: 5.使用play()方法播 ...
最新文章
- 虚拟化--YESLAB DC Vphere5 上课PDF
- 2013 全国高校计算机等级考试(广西考区)一级笔试试题,全国高校计算机等级考试(广西考区)一级笔试试题卷.PDF...
- 电脑屏保海底世界_一款电脑桌面锁屏软件:梦幻水族馆(好多鱼)
- windows已添加Pin码仍提示添加的解决方法
- Scala in depth 6 Scala的类型系统 中
- springboot 优雅停机_SpringBoot 优雅停止服务的几种方法 第309篇
- Java Web-网页基础-HTML基础
- Maven学习总结(35)——Maven项目错误 JAX-RS (REST Web Services) 2.0 can not be installed问题
- 腾讯:我火了,新浪:你没有!
- wget下载命令使用说明
- Linux基础之vim文本编辑器
- mysql-connector-java驱动包下载地址收藏 mysql驱动包下载地址
- 阿里IOT用AMQP在服务端订阅消息,踩坑
- 进程调度之5:系统调用exit与wait4
- poi修改excel单元格值导致单元格变成橙色的问题(WPS)
- 高境三中计算机老师,立德树人奋进担当,教育脱贫托举希望——高境三中热烈庆祝第三十六个教师节...
- 仿新浪微博返回顶部的js实现(jQuery/MooTools)
- 驱动器开发:基础概念一览
- windows上安装linux_Linux系统安装Windows软件? 通过这个工具可以做到
- 烧写android到开发板,烧写开发板_RZMars的技术博客_51CTO博客
热门文章
- 密大安娜堡计算机硕士,2020年密歇根大学安娜堡分校一年制硕士含金量
- 从零开始学iOS开发的15条建议
- 海峡消费报携手HQTS汉斯曼集团,发布中小企业消费数据报告
- 记学编程以来第一次找错费时一天的经历——kafka集群创建主题时报错
- 打破中国企业类软件成长的怪圈,我找到了方法!
- linux开启UDP端口
- SAP 01-初识AMDP(ABAP-Managed Database Procedure)
- 声母-字母查询工具-词语缩写查询在线工具
- 使用PyO3从Python调用 Rust:加速Python
- c语言switch case缩进,C语言中的switchnbsp;casenbsp;语句的用法详解