安装PyMySQL

下载地址:https://pypi.python.org/pypi/PyMySQL

1.把操作Mysql数据库封装成类,数据库和表先建好

import pymysql.cursors
# ======== Setting linked test databases ===========
host = '192.168.17.123'
user = 'root'
password = ''
db='polls' # ======== MySql base operating =================== class MySQLOperating(): def __init__(self):
try:
# Connect to the database
self.connection = pymysql.connect(host = host,
user = user,
password = password,
db = db,
charset = 'utf8mb4',
cursorclass = pymysql.cursors.DictCursor)
except pymysql.err.OperationalError as e:
print("Mysql Error %d: %s" %(e.args[0], e.args[1])) # clear table data
def clear(self, table_name):
real_sql = "delete from " + table_name + ";"
with self.connection.cursor() as cursor:
cursor.execute("SET FOREIGN_KEY_CHECKS = 0;")
cursor.execute(real_sql)
self.connection.commit()

def insert(self, table_name, data):
for key in data:
data[key] = "'" + str(data[key]) + "'"
key = ','.join(data.keys())
value = ','.join(data.values())
real_sql = "INSERT INTO " + table_name + " (" + key + ") VALUES (" + value +")" with self.connection.cursor() as cursor:
cursor.execute(real_sql)
self.connection.commit() # close database
def close(self):
self.connection.close() if __name__ == '__main__':
db = MySQLOperating()
table_name = "poll_question"
data = {'id':1, 'question_text':'you buy pro6?'}
db.clear(table_name)
db.insert(table_name, data)
db.close()

2.插入数据

import sys
import MySQLOperating # Inster table datas
def insert_data(table, datas):
db = MySQLOperating()
db.clear(table)
for data in datas:
db.insert(table, data)
db.close() #Create data
table_poll_question = "polls_question"
datas_poll_question =[ {'id': 1, 'question_text': 'you buy pro6?', 'pub_date':'2016-07-23 09:58:56.000000'}] table_poll_choice = "polls_choice"
datas_poll_choice =[{'id': 1, 'choice_text': 'buy', 'votes': 0, 'question_id': 1},
{'id': 2, 'choice_text': 'not buy', 'votes': 0, 'question_id': 1},] # init data
def init_data():
insert_data(table_poll_question, datas_poll_question)
insert_data(table_poll_choice, datas_poll_choice) if __name__ == '__main__':
init_data()

python3操作MySQL数据库的更多相关文章

  1. Python3 操作mysql数据库

    python关于mysql的API--pymysql模块 pymsql是Python中操作MySQL的模块,其使用方法和py2的MySQLdb几乎相同. 模块安装 pip install pymysq ...

  2. (接口自动化)Python3操作MySQL数据库

    基础语法: import pymysql #导入模块 conn = pymysql.connect(host='localhost',user='root', passwd='123456', db= ...

  3. python3操作mysql数据库增删改查

    #!/usr/bin/python3 import pymysql import types db=pymysql.connect("localhost","root&q ...

  4. python3操作mysql数据库表01(基本操作)

    #!/usr/bin/env python# -*- coding:UTF-8 -*- import requestsfrom bs4 import BeautifulSoupfrom bs4 imp ...

  5. python3操作MySQL数据库,一次插入多条记录的方法

    这里提供一个思路,使用字符串拼接的方法,将sql语句拼接出来,然后去执行: l = ["] s = '-' print(s.join(l))

  6. python3操作mysql数据库表01(封装查询单条、多条数据)

    #!/usr/bin/env python# -*- coding:UTF-8 -*- import pymysql# import os'''封装查询单条.多条数据'''# os.environ[' ...

  7. python【第十二篇下】操作MySQL数据库以及ORM之 sqlalchemy

    内容一览: 1.Python操作MySQL数据库 2.ORM sqlalchemy学习 1.Python操作MySQL数据库 2. ORM sqlachemy 2.1 ORM简介 对象关系映射(英语: ...

  8. python3操作mysql教程

    一.下载\安装\配置 1. python3 Python3下载网址:http://www.python.org/getit/ 当前最新版本是python3.2,下载地址是 http://www.pyt ...

  9. python接口自动化(三十八)-python操作mysql数据库(详解)

    简介 现在的招聘要求对QA人员的要求越来越高,测试的一些基础知识就不必说了,来说测试知识以外的,会不会一门或者多门开发与语言,能不能读懂代码,会不会Linux,会不会搭建测试系统,会不会常用的数据库, ...

随机推荐

  1. Vue.js图片预览插件

    vue-picture-preview-extend vue-picture-preview的扩展版本,本文中插件是由其他大神开发,我做了一些扩展,原文链接:https://segmentfault. ...

  2. 个人知识管理系统Version1.0开发记录(07)

    模 块 复 用 原本还要测试一会的,突然出现一连串诡异的问题,比如,编译少加载个类啊,输入地址少个字母啊,改几行代码一改就是半小时啊.这是在提醒我们大脑疲倦了,所以果断小结,下次继续.这一次简单完成了 ...

  3. 【hive】时间段为五分钟的统计

    问题内容 今天遇到了一个需求,需求就是时间段为5分钟的统计.有数据的时间戳.对成交单量进行统计. 想法思路 因为数据有时间戳,可以通过from_unixtime()来获取具体的时间. 有了具体的时间, ...

  4. 201621123005《java程序设计》第五周学习总结

    201621123005<Java程序设计>第五周实验总结 1. 本周学习总结 1.1 写出你认为本周学习中比较重要的知识点关键词 接口.多态.inferface.has-a.Compar ...

  5. python实现八大排序算法

    插入排序 核心思想 插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的.个数加一的有序数据,算法适用于少量数据的排序,时间复杂度为 O(n^2).是稳定的排序方法.插入算法 ...

  6. Google Flutter框架:使用VS Code进行开发

    虽然进行安卓开发使用Android studio 比较方便 ,但是因为AS太臃肿而且还有一些404问题,就在打算如何进行高效的Android开发,于是找到了Flutter SDK, 他支持使用IDE进 ...

  7. 一个Android开发妹子的找工作心酸史

    阿里:实习二面被KO 1,人生接到的第一个电话面试来自大家都说好的阿里,心情激动,说话颤抖,本以为没有戏,然而第二天接到了二面的电话有点小激动.然后就是被ko了,死的原因很简单,那时候单纯的自己什么都 ...

  8. TypeScript学习笔记(六) - 模块

    本篇将介绍TypeScript里的模块,和使用方法. 在ECMAScript 2015标准里,JavaScript新增了模块的概念.TypeScript也沿用了这个概念. 一.模块的导入和导出 模块在 ...

  9. UEFI +、GPT 、BIOS 、 MBR的关系

    1.传统的主板就是传统 BIOS,可在使用 MBR 分区表的硬盘(俗称 MBR磁盘,就是传统常用的模式)上安装32或64位操作系统.同时也支持使用 GUID 分区表的硬盘(俗称GPT磁盘),但该硬盘上 ...

  10. Apache Tomcat8必备知识(完整的支持WebSockets 1.0)

    一.Apache Tomcat 8介绍 Apache Tomcat 8RC1版于前几日发布.它 经过了2年的开发,引入了很多新特征,由于目前还只是Alpha版,故不推荐在产品中使用.但是我们应该了解它 ...