python3.4用循环往mysql5.7中写数据并输出的实现方法

发布时间 - 2026-01-11 01:57:31    点击率:

如下所示:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# __author__ = "blzhu"
"""
python study
Date:2017
"""
import pymysql
# import MySQLdb #python2中的产物

try:
  # 获取一个数据库连接,注意如果是UTF-8类型的,需要制定数据库
  conn = pymysql.connect(host='localhost', user='root', passwd='root', db='zbltest1', port=3306, charset='utf8')
  cur = conn.cursor() # 获取一个游标
  for i in range(1, 10):
    zbl_id = str(i)
    zbl_name = 'zbl'+str(i)
    zbl_gender = 'man'
    # print("%s,%s,%s" % (zbl_id,zbl_name,zbl_gender))
    # sql = "insert student VALUES (id='%s',name='%s',gender='%s')" % (zbl_id,zbl_name,zbl_gender)
    sql = "insert student VALUES ('%s','%s','%s')" % (zbl_id, zbl_name, zbl_gender)
    # print(sql)
    cur.execute(sql)
  conn.commit()# 将数据写入数据库

    # try:
    # cur.execute(sql)
      # cur.commit()
    # except:
    #   cur.rollback()
    #cur.execute("""INSERT INTO 'student' ('id','name','gender') VALUES (%s,%s,%s ,(zbl_id,zbl_name,zbl_gender,))""")
    #cur.execute("""INSERT INTO 'student' ('id','name','gender') VALUES (zbl_id,zbl_name,zbl_gender)""")

    # cur.execute("INSERT student VALUES (zbl_id,zbl_name,zbl_gender)")

  # cur.execute("INSERT student VALUES ('4', 'zbl4', 'man')")# 正确
  #cur.execute("INSERT INTO 'student' ('id','name','gender') VALUES ('4', 'zbl4', 'man')")#错误
  #cur.execute("INSERT student ('id','name','gender') VALUES ('4', 'zbl4', 'man')")


  cur.execute('select * from student')
  # data=cur.fetchall()
  for d in cur:
    # 注意int类型需要使用str函数转义
    print("ID: " + str(d[0]) + ' 名字: ' + d[1] + " 性别: " + d[2])
  print("row_number:", (cur.rownumber))
  # print('hello')

  cur.close() # 关闭游标
  conn.close() # 释放数据库资源
except Exception:
  print("发生异常")

上面代码是对的,但是是曲折的。

下面整理一下:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# __author__ = "blzhu"
"""
python study
Date:2017
"""
import pymysql
try:
  # 获取一个数据库连接,注意如果是UTF-8类型的,需要制定数据库
  conn = pymysql.connect(host='localhost', user='root', passwd='root', db='zbltest1', port=3306, charset='utf8')
  cur = conn.cursor() # 获取一个游标
  for i in range(1, 10):
    zbl_id = str(i)
    zbl_name = 'zbl'+str(i)
    zbl_gender = 'man'
    # print("%s,%s,%s" % (zbl_id,zbl_name,zbl_gender))
    # sql = "insert student VALUES (id='%s',name='%s',gender='%s')" % (zbl_id,zbl_name,zbl_gender)
    sql = "insert student VALUES ('%s','%s','%s')" % (zbl_id, zbl_name, zbl_gender)
    # print(sql)
    cur.execute(sql)
  conn.commit()# 将数据写入数据库
  cur.execute('select * from student')
  # data=cur.fetchall()
  for d in cur:
    # 注意int类型需要使用str函数转义
    print("ID: " + str(d[0]) + ' 名字: ' + d[1] + " 性别: " + d[2])
  print("row_number:", (cur.rownumber))
  # print('hello')

  cur.close() # 关闭游标
  conn.close() # 释放数据库资源
except Exception:
  print("发生异常")
#!/usr/bin/python3
import pymysql
import types

db=pymysql.connect("localhost","root","123456","python");

cursor=db.cursor()

#创建user表
cursor.execute("drop table if exists user")
sql="""CREATE TABLE IF NOT EXISTS `user` (
   `id` int(11) NOT NULL AUTO_INCREMENT,
   `name` varchar(255) NOT NULL,
   `age` int(11) NOT NULL,
   PRIMARY KEY (`id`)
  ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=0"""

cursor.execute(sql)


#user插入数据
sql="""INSERT INTO `user` (`name`, `age`) VALUES
('test1', 1),
('test2', 2),
('test3', 3),
('test4', 4),
('test5', 5),
('test6', 6);"""

try:
  # 执行sql语句
  cursor.execute(sql)
  # 提交到数据库执行
  db.commit()
except:
  # 如果发生错误则回滚
  db.rollback()
  
  
#更新
id=1
sql="update user set age=100 where id='%s'" % (id)
try:
  cursor.execute(sql)
  db.commit()
except:
  db.rollback()
  
#删除
id=2
sql="delete from user where id='%s'" % (id)
try:
  cursor.execute(sql)
  db.commit()
except:
  db.rollback()
  
  
#查询
cursor.execute("select * from user")

results=cursor.fetchall()

for row in results:
  name=row[0]
  age=row[1]
  #print(type(row[1])) #打印变量类型 <class 'str'>

  print ("name=%s,age=%s" % \
       (age, name))

以上这篇python3.4用循环往mysql5.7中写数据并输出的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


# mysql  # python  # 3.4  # python 使用while循环输出*组成的菱形实例  # python循环输出三角形图案的例子  # python笔记_将循环内容在一行输出的方法  # python os.fork() 循环输出方法  # python中for循环输出列表索引与对应的值方法  # Python实现动态循环输出文字功能  # 给大家  # 希望能  # 所示  # 这篇  # 小编  # 大家多多  # 发生错误  # 整理一下  # port  # charset  # localhost  # host  # connect  # user  # db  # passwd  # root  # cur  # print  # man 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何快速查询网站的真实建站时间?  专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?  php json中文编码为null的解决办法  创业网站制作流程,创业网站可靠吗?  laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法  javascript中的数组方法有哪些_如何利用数组方法简化数据处理  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】  深圳网站制作的公司有哪些,dido官方网站?  QQ浏览器网页版登录入口 个人中心在线进入  进行网站优化必须要坚持的四大原则  Laravel如何处理CORS跨域问题_Laravel项目CORS配置与解决方案  用v-html解决Vue.js渲染中html标签不被解析的问题  Python并发异常传播_错误处理解析【教程】  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  米侠浏览器网页图片不显示怎么办 米侠图片加载修复  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)  google浏览器怎么清理缓存_谷歌浏览器清除缓存加速详细步骤  Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复  Laravel如何使用Telescope进行调试?(安装和使用教程)  敲碗10年!Mac系列传将迎来「触控与联网」双革新  Laravel怎么连接多个数据库_Laravel多数据库连接配置  Laravel如何生成API文档?(Swagger/OpenAPI教程)  如何用JavaScript实现文本编辑器_光标和选区怎么处理  如何自定义建站之星模板颜色并下载新样式?  图册素材网站设计制作软件,图册的导出方式有几种?  Windows家庭版如何开启组策略(gpedit.msc)?(安装方法)  Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】  Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】  Windows10电脑怎么设置虚拟光驱_Win10右键装载ISO镜像文件  php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】  如何构建满足综合性能需求的优质建站方案?  如何在阿里云服务器自主搭建网站?  如何用PHP快速搭建高效网站?分步指南  绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信  做企业网站制作流程,企业网站制作基本流程有哪些?  Laravel如何处理文件下载请求?(Response示例)  Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】  如何基于云服务器快速搭建网站及云盘系统?  如何用wdcp快速搭建高效网站?  网站制作免费,什么网站能看正片电影?  Python正则表达式进阶教程_复杂匹配与分组替换解析  Android实现代码画虚线边框背景效果  Laravel的HTTP客户端怎么用_Laravel HTTP Client发起API请求教程  Android使用GridView实现日历的简单功能  如何在景安云服务器上绑定域名并配置虚拟主机?  如何在宝塔面板中创建新站点?  html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】  成都品牌网站制作公司,成都营业执照年报网上怎么办理?