python3.4用函数操作mysql5.7数据库
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# __author__ = "blzhu"
"""
python study
Date:2017
"""
# -*- coding: utf-8 -*-
__author__ = 'djstava@gmail.com' import logging
import pymysql class MySQLCommand(object):
def __init__(self, host, port, user, passwd, db, table, charset):
self.host = host
self.port = port
self.user = user
self.password = passwd
self.db = db
self.table = table
self.charset = charset def connectMysql(self):
try:
self.conn = pymysql.connect(host=self.host, port=self.port, user=self.user, passwd=self.password,
db=self.db, charset=self.charset)
self.cursor = self.conn.cursor()
print('connect ' + self.table + ' correctly!')
except:
print('connect mysql error.') def queryMysql(self):
sql = "SELECT * FROM " + self.table try:
print("query Mysql:")
self.cursor.execute(sql)
#row = self.cursor.fetchone()
for d in self.cursor:
print(str(d[0]), str(d[1]), str(d[2]))
# print(row) except:
print(sql + ' execute failed.') def insertMysql(self, id, name, sex):
sql = "INSERT INTO " + self.table + " VALUES(" + id + "," + "'" + name + "'," + "'" + sex + "')"
try:
print("insert Mysql:")
self.cursor.execute(sql)
print(sql)
except:
print("insert failed.") def updateMysqlSN(self, name, sex):
sql = "UPDATE " + self.table + " SET sex='" + sex + "'" + " WHERE name='" + name + "'"
print("update sn:" + sql) try:
self.cursor.execute(sql)
self.conn.commit()
except:
self.conn.rollback() def deleteMysql(self, id): # 删除
sql = "DELETE FROM %s WHERE id='%s'" % (self.table,id)
#"delete from student where zid='%s'" % (id)
try:
self.cursor.execute(sql)
print(sql)
self.conn.commit()
print("delete the " + id + "th row successfully!")
except:
print("delete failed!")
self.conn.rollback() def closeMysql(self):
self.conn.commit() # 不执行此句,所作的操作不会写入到数据库中
self.cursor.close()
self.conn.close() if __name__ == '__main__':
zblmysql = MySQLCommand(host='localhost', user='root', passwd='root', db='zbltest1', port=3306, table='student2',
charset='utf8')
zblmysql.connectMysql()
zblmysql.queryMysql()
zblmysql.insertMysql('', 'zbl5', 'man')
zblmysql.queryMysql()
zblmysql.deleteMysql(id=2)
zblmysql.queryMysql()
zblmysql.updateMysqlSN(name='zbl5',sex='woman')
zblmysql.queryMysql()
zblmysql.closeMysql()
参考:http://www.cnblogs.com/tkinter/p/5632312.html
很好玩!
python3.4用函数操作mysql5.7数据库的更多相关文章
- Python3.x:SQLAlchemy操作数据库
Python3.x:SQLAlchemy操作数据库 前言 SQLAlchemy是一个ORM框架(Object Rational Mapping,对象关系映射),它可以帮助我们更加优雅.更加高效的实现数 ...
- 【简说Python WEB】视图函数操作数据库
目录 [简说Python WEB]视图函数操作数据库 系统环境:Ubuntu 18.04.1 LTS Python使用的是虚拟环境:virutalenv Python的版本:Python 3.6.9 ...
- SQL Server学习之路(七):Python3操作SQL Server数据库
0.目录 1.前言 2.准备工作 3.简单测试语句 4.提交与回滚 5.封装成类的写法 1.前言 前面学完了SQL Server的基本语法,接下来学习如何在程序中使用sql,毕竟不能在程序中使用的话, ...
- 数据库MySQL之 视图、触发器、存储过程、函数、事务、数据库锁、数据库备份、事件
数据库MySQL之 视图.触发器.存储过程.函数.事务.数据库锁.数据库备份.事件 浏览目录 视图 触发器 存储过程 函数 事务 数据库锁 数据库备份 事件 一.视图 1.视图概念 视图是一个虚拟表, ...
- centos环境下使用percona-xtrabackup对mysql5.6数据库innodb和myisam进行快速备份及恢复
centos环境下使用percona-xtrabackup对mysql5.6数据库innodb和myisam进行快速备份及恢复 有时候我们会碰到这样的业务场景: 1.将大的数据库恢复到本地进行业务测试 ...
- MySQL 之 视图、触发器、存储过程、函数、事物与数据库锁
浏览目录: 1.视图 2.触发器 3.存储过程 4.函数 5.事物 6.数据库锁 7.数据库备份 1.视图 视图:是一个虚拟表,其内容由查询定义.同真实的表一样,视图包含一系列带有名称的列和行数据 视 ...
- python3内置函数大全(顺序排列)
python3内置函数大全 内置函数 (1)abs(), 绝对值或复数的模 1 print(abs(-6))#>>>>6 (2)all() 接受一个迭代器,如果迭代器的所有 ...
- python3内置函数大全
由于面试的时候有时候会问到python的几个基本内置函数,由于记不太清,就比较难受,于是呕心沥血总结了一下python3的基本内置函数 Github源码: https://github. ...
- mysql5.6数据库双机热备、主从备份
主题:mysql5.6数据库双机热备.主从备份 缘由: 在Web应用系统中,数据库性能是导致系统性能瓶颈最主要的原因之一.尤其是在大规模系统中,数据库集群已经成为必备的配置之一.集群的好处主要有:查询 ...
随机推荐
- 写一写关于python开发面试的常遇到的问题以及解答吧,持续更新——看心情
1,什么是python中的魔术方法? 魔术方法是重载运算符的昵称,形式是__init__类似这样的前后双下滑线组成的,常用的__init__,__new__,__call__,__str__,__ge ...
- day 10 函数名的运用,闭包,迭代器
函数名的本质 函数名本质上就是函数的内存地址 函数名的五种运用: 1.函数名是一个变量 def func(): print(666) print(func) # 函数的内存地址 <functio ...
- ARM交叉编译工具链
交叉编译工具链是一个由编译器.连接器和解释器组成的综合开发环境,交叉编译工具链主要由binutils.gcc和glibc三个部分组成. 免费版目前有三大主流工具商提供,第一是GNU(提供源码,自行编译 ...
- Java_10.1继承应用
/* * 描述学生和工人两个类 name age进行抽取 ,父类 Person 提供set get * 同时创建学生和工人对象 必须明确年龄和姓名 并且控制台输出 * */ ...
- certificate verify failed (https://gems.ruby-china.org/specs.4.8.gz)
redis集群配置中 >gem sources -a https://ruby.taobao.org/ Error fetching https://gems.ruby-china.org/: ...
- Razor 模板引擎的使用
安装Razor的模板引擎,通过vs的“扩展管理器”,查找"RazorEngine"并安装.安装的dll包括”RazorEngine.dll“和”System.Web.Razor.d ...
- sqlserver数据库命名规则
sqlserver数据库命名规则: (1)第一个字符必须是字母或“_”.“@”.“#” (2)数据库名称不能是T-SQL的保留字 (3)不允许嵌入空格或其他特殊字符
- JSON与GSON比较
JSON: 是Android SDK官方的库,所以在开发移动端的工程时就必须使用JSON.进行数据的转换和处理 GSON: GSON适用于服务端,gson比json功能更加强大.比如在集合类的处理.自 ...
- linux工具介绍
http://linuxtools-rst.readthedocs.io/zh_CN/latest/tool/index.html 工具参考篇 1. gdb 调试利器 2. ldd 查看程序依赖库 3 ...
- image src base64 svg
1.显示img: 大家可能注意到了,网页上有些图片的src或css背景图片的url后面跟了一大串字符,比如:data:image/png;base64, iVBORw0KGgoAAAANSUhEUgA ...