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

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

来源:中文源码网    浏览: 次    日期:2018年9月2日

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

#!/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 typesdb=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])) #打印变量类型 print ("name=%s,age=%s" % \

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

亲,试试微信扫码分享本页! *^_^*

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/560446.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java反射 Method

java反射 Method 获取字节码文件对象 Class c Class.forName("fieldtest.Student");通过无参构造方法创建对象obj Constructor con c.getConstructor(); Object obj con.newInstance();Method m1 c.getMethod(“study”);获取study方法 m1.invoke(obj);使用obj对…

axure 鼠标变成手,Axure教程|鼠标移入移出自动显示与隐藏三级菜单

前几天因工作需要做一个鼠标移入显示隐藏菜单,鼠标移出自动隐藏菜单,做的时候觉得没有什么问题,做完后预览就发现一个很严重的问题,就是鼠标移出一级菜单向二级菜单时二级菜单不显示,或者二级菜单显示三级菜单不显示。…

java与平台无关的原因

Java字节码 Java源程序(.java)要先编译成与平台无关的字节码文件(.class),然后字节码文件再解释成机器码运行。解释是通过Java虚拟机来执行的。 java要运行要经过如下步骤 ① Java源文件—->编译器(工具)—->…

php websocket应用实例,php使用websocket示例详解

下面我画了一个图演示 client 和 server 之间建立 websocket 连接时握手部分,这个部分在 node 中可以十分轻松的完成,因为 node 提供的 net 模块已经对 socket 套接字做了封装处理,开发者使用的时候只需要考虑数据的交互而不用处理连接的建立…

Java集合 Collection

Jdk提供了一些特殊的类,用来保存数量不确定的对象,存储任意类型对象,长度可变。这些类统称为集合。 集合类位于Java.util包中,按存储结构分为Collection单列集合和Map双列集合。 Collection是单列集合的根接口,有两个…

java basic data type,java基本数据类型--Basic Datatypes

Variables are nothing but reserved memory locations to store values. This means that when you create a variable you reserve some space in the memory.---说的好有道理Based on the data type of a variable, the operating system allocates memory and decides what…

Java final修饰符的作用,Java中的final修饰符

1.什么时候可以选择final修饰符如果想让一个类不被其他类继承,不允许在有子类,这时候就要考虑用到final来修饰。2.用final修饰的类首先大家要明白,用final修饰的类是不能被继承的,下面来看一个错误案例。eg:final clas…

Java基础 HashMap的添加 修改 遍历 Map.Entry Map.entrySet()的使用及实例

Java Map Map中不能包含相同的键,每个键只能映射一个值。 HashMap:并不能保证它的元素的顺序,元素加入散列映射的顺序并不一定是它们被迭代方法读出的顺序。 Map.Entry Map.Entry 是Map中的一个接口,他的用途是表示一个映射项…

adminer.php下载,Adminer.php

Adminer.php就是原来的phpMinAdmin,这是用PHP编写的数据库管理工具,支持mysql、mariadb、postgresql、sqlite、MS SQL、Oracle等多种数据库,虽然是一个源码,但是可以使用用户们和密码直接连接到数据库的服务器,既可以对…

windows下如何在命令行里切换到任意目录

切换到C盘中的某个文件夹,比如AppData,可以执行命令cd AppData; 但如果想切换到D盘,输入cd d:是不行的; 如果我们要切换盘符的目录,正确的用法是在cd 和路径中间 增加一个“/d”,如cd /d d: 也可以不用cd指令&#x…

Java基础 系统注解 @Override @Deprecated @SuppressWarnings 使用的方法及原因

Java 系统注解 为什么用?: 好处:使用系统定义的注解,可以在编译时对程序进行检查。 注解用在包、类、字段、方法、局部变量、方法参数等的前面,对这些元素进行说明和注释。 Override Override用来修饰一个方法&am…

java二维数组排序先行后列,数组知识点归纳

◆◆◆一、理解一维数组的定义和应用,了解二维数组和控件数组;1、数组的概念:数组并不是一种数据类型,而是一组相同类型数据的集合。用一个统一的名字(数组名)代表逻辑上相关的一批数据,每个元素用下标变量来区分&…

Java 使用反射处理注解

Java 使用反射处理注解 自定义注解的格式: [public|final] interface 注解名//interface 表明:这是一个自定义注解 {注解元素//注解元素 是无参数的方法 }// 注解元素的格式: 数据类型 注解元素名() [default 默认值]例子: //自…

php面试宝典1000题,【PHP面试宝典1000题】HTTP中的请求头(深圳小美网络科技)

(1)通作一新求抖直微圈用信息头即址工框按都不他移据流。果原箭近第作架量是能用于请求消息中,也能用于响应信息中,但与被传输的实体内容没有关系的信息头,如Data,Pra分浏代刚的学过互解久点维数数请曾房总题屏断果如以气。泉公一实切式时带近享览码开时会进。,后,护…

java基础 通过继承Thread类和实现Runnable接口创建线程

java 创建线程 Java中,线程也是一种对象,但不是任何对象都可以成为线程。 只有实现了Runnable接口或继承了Thread类的对象才能成为线程。 继承Thread类 //格式: class 类名 extends Thread//从Thread类扩展出子类 {属性方法修饰符 run(){…

php求链表中位数,先给伸手党的php链表遍历求和

问题给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字…

Java基础 线程同步

线程的同步:在编程过程中,为了防止多线程访问共享资源时发生冲突,Java提供了线程同步机制。所谓同步,就是指一个线程等待另一个线程操作完再继续的情况。 线程安全:一个类很好地同步以保护它的数据,这个类…

c++primer 3.2,3.3练习题

文章目录3.2.2 string 对象上的操作3.2.3 处理string对象中的字符3.3.2 向vector对象中添加元素3.3.3其他vector操作练习题涉及到代码的部分。3.2.2 string 对象上的操作 3.2 //一次输入一整行 #include<string> #include<iostream> using namespace std;int mai…

c++primer 3.4练习题

文章目录3.4 迭代器介绍3.4.1 使用迭代器3.4.2 迭代器运算3.4 迭代器介绍 3.4.1 使用迭代器 3.21 #include<vector> #include<iostream> #include<string> using namespace std;int main(){vector<int> v1;vector<int> v2(10);vector<int&…

嵌入式nosql php,NoSQL 嵌入式数据库NeDB示例

在nw.js一直无法配置sqlite3数据库&#xff0c;所以一直使用web sql数据库&#xff0c;不过还原之类的操作异常麻烦&#xff0c;打算使用NeDB数据库&#xff0c;非关系型数据库的扩展性很适合数据结构不确定性的nw.js项目。在Capacitor或cordova打包APP使用需引用&#xff1a;n…