python3操作MySQL数据库
安装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数据库的更多相关文章
- Python3 操作mysql数据库
python关于mysql的API--pymysql模块 pymsql是Python中操作MySQL的模块,其使用方法和py2的MySQLdb几乎相同. 模块安装 pip install pymysq ...
- (接口自动化)Python3操作MySQL数据库
基础语法: import pymysql #导入模块 conn = pymysql.connect(host='localhost',user='root', passwd='123456', db= ...
- python3操作mysql数据库增删改查
#!/usr/bin/python3 import pymysql import types db=pymysql.connect("localhost","root&q ...
- python3操作mysql数据库表01(基本操作)
#!/usr/bin/env python# -*- coding:UTF-8 -*- import requestsfrom bs4 import BeautifulSoupfrom bs4 imp ...
- python3操作MySQL数据库,一次插入多条记录的方法
这里提供一个思路,使用字符串拼接的方法,将sql语句拼接出来,然后去执行: l = ["] s = '-' print(s.join(l))
- python3操作mysql数据库表01(封装查询单条、多条数据)
#!/usr/bin/env python# -*- coding:UTF-8 -*- import pymysql# import os'''封装查询单条.多条数据'''# os.environ[' ...
- python【第十二篇下】操作MySQL数据库以及ORM之 sqlalchemy
内容一览: 1.Python操作MySQL数据库 2.ORM sqlalchemy学习 1.Python操作MySQL数据库 2. ORM sqlachemy 2.1 ORM简介 对象关系映射(英语: ...
- python3操作mysql教程
一.下载\安装\配置 1. python3 Python3下载网址:http://www.python.org/getit/ 当前最新版本是python3.2,下载地址是 http://www.pyt ...
- python接口自动化(三十八)-python操作mysql数据库(详解)
简介 现在的招聘要求对QA人员的要求越来越高,测试的一些基础知识就不必说了,来说测试知识以外的,会不会一门或者多门开发与语言,能不能读懂代码,会不会Linux,会不会搭建测试系统,会不会常用的数据库, ...
随机推荐
- numpy.zeros(np.zeros)使用方法--python学习笔记31
https://blog.csdn.net/qq_26948675/article/details/54318917
- Http缓存知识;HTTPS, HTTP2相关知识;百度统计和即时线上客服。
安装 : 百度统计 来统计用户流量, Intercom 来做即时线上客服. 这两个是 JavaScript 插件放在 HTML 上的. HTTP缓存: https://developers.googl ...
- 10个有趣的Javascript和CSS库
Tailwind CSS Tailwind是用于构建自定义用户界面的实用CSS框架. 每个Tailwind小应用都有多种尺寸,这使得创建响应式界面变得非常简单. 您可以自定义颜色,边框尺寸,字体,阴影 ...
- UVA-129 Krypton Factor(回溯)
题目大意:由字母A到Z组成的字符串,其中有两个子串完全相同的叫做容易的串,反之叫困难的串.找出由前L个字母组成的第n个困难的串. 题目分析:简单回溯,不过要判断是否存在重复子串比较棘手.<入门经 ...
- 快速切题 sgu136. Erasing Edges
136. Erasing Edges time limit per test: 0.25 sec. memory limit per test: 4096 KB Little Johnny paint ...
- 433.92 TX RX module design and test recording。。
This paper records the process of 433.92 TX RX module design and test,fyi. 1 RX module The circuit ...
- 关于EPoll的个人理解
1.epoll 是I/o多路复用的一种解决方案,对比select的优点有: a.支持打开最大的文件描述符(可高达百万) b.效率并不随着描述符的增多而线性下降.select每次是轮询,所以描述符越多效 ...
- InputStream,String和Reader之间的转换
1.String –> InputStreamInputStrem is = new ByteArrayInputStream(str.getBytes());orByteArrayInputS ...
- InputStream,InputStreamReader和Reader的关系
InputStream:得到的是字节输入流,InputStream.read("filename")之后,得到字节流 Reader:读取的是字符流 InputStreamReade ...
- HDU 1285:确定比赛名次(拓扑排序)
确定比赛名次 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Subm ...