python3.4用函数操作mysql5.7数据库

时间:2023-01-10 15:17:57
 #!/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数据库的更多相关文章

  1. Python3.x:SQLAlchemy操作数据库

    Python3.x:SQLAlchemy操作数据库 前言 SQLAlchemy是一个ORM框架(Object Rational Mapping,对象关系映射),它可以帮助我们更加优雅.更加高效的实现数 ...

  2. 【简说Python WEB】视图函数操作数据库

    目录 [简说Python WEB]视图函数操作数据库 系统环境:Ubuntu 18.04.1 LTS Python使用的是虚拟环境:virutalenv Python的版本:Python 3.6.9 ...

  3. SQL Server学习之路(七):Python3操作SQL Server数据库

    0.目录 1.前言 2.准备工作 3.简单测试语句 4.提交与回滚 5.封装成类的写法 1.前言 前面学完了SQL Server的基本语法,接下来学习如何在程序中使用sql,毕竟不能在程序中使用的话, ...

  4. 数据库MySQL之 视图、触发器、存储过程、函数、事务、数据库锁、数据库备份、事件

    数据库MySQL之 视图.触发器.存储过程.函数.事务.数据库锁.数据库备份.事件 浏览目录 视图 触发器 存储过程 函数 事务 数据库锁 数据库备份 事件 一.视图 1.视图概念 视图是一个虚拟表, ...

  5. centos环境下使用percona-xtrabackup对mysql5.6数据库innodb和myisam进行快速备份及恢复

    centos环境下使用percona-xtrabackup对mysql5.6数据库innodb和myisam进行快速备份及恢复 有时候我们会碰到这样的业务场景: 1.将大的数据库恢复到本地进行业务测试 ...

  6. MySQL 之 视图、触发器、存储过程、函数、事物与数据库锁

    浏览目录: 1.视图 2.触发器 3.存储过程 4.函数 5.事物 6.数据库锁 7.数据库备份 1.视图 视图:是一个虚拟表,其内容由查询定义.同真实的表一样,视图包含一系列带有名称的列和行数据 视 ...

  7. python3内置函数大全(顺序排列)

    python3内置函数大全 内置函数 (1)abs(),   绝对值或复数的模 1 print(abs(-6))#>>>>6 (2)all() 接受一个迭代器,如果迭代器的所有 ...

  8. python3内置函数大全

    由于面试的时候有时候会问到python的几个基本内置函数,由于记不太清,就比较难受,于是呕心沥血总结了一下python3的基本内置函数 Github源码:        https://github. ...

  9. mysql5.6数据库双机热备、主从备份

    主题:mysql5.6数据库双机热备.主从备份 缘由: 在Web应用系统中,数据库性能是导致系统性能瓶颈最主要的原因之一.尤其是在大规模系统中,数据库集群已经成为必备的配置之一.集群的好处主要有:查询 ...

随机推荐

  1. Selenium Webdriver元素定位的常用方式

    单选框.复选框.文本框和密码框的元素标签都是input,此时单靠tagName无法准确地得到我们想要的元素,需要结合type属性才能过滤出我们要的元素.示例代码如下: public class Sea ...

  2. C#Css/Js静态文件压缩--Yui.Compressor.Net

    一.Asp.Net 自带静态文件压缩工具包 Microsoft.AspNet.Web.Optimization http://www.nuget.org/packages/Microsoft.AspN ...

  3. java List与数组互转

    数组转List:String[] arr = new String[] {"str1", "str2"};List<String> list = A ...

  4. ideaIU-2016&period;2&period;5激活

    IntelliJ IDEA的在线注册码生成页面 http://idea.iteblog.com 新的License server地址为:http://idea.iteblog.com/key.php

  5. &lpar;中等&rpar; HDU 5293 Tree chain problem,树链剖分&plus;树形DP。

    Problem Description   Coco has a tree, whose vertices are conveniently labeled by 1,2,…,n.There are ...

  6. STM32驱动MPU6050

    轴 MEMS轴 MEMS 加速度计,以及一个可扩展的数字运动处理器 DMP(Digital Motion Processor),可用 I2C 接口连接一个第三方的数字传感器,比如磁力计.扩展之后就可以 ...

  7. ThreadLocal经典分页

    package com.netease.live.admin.util; import com.netease.live.common.util.Constant; /** * * @author b ...

  8. ArcGIS 网络分析&lbrack;1&period;2&rsqb; 利用1&period;1的线shp创建网络数据集&sol;并简单试验最佳路径

    上篇已经创建好了线数据(shp文件格式)链接:点我 这篇将基于此shp线数据创建网络数据集. 在此说明:shp数据的网络数据集仅支持单一线数据,也就是说基于shp文件的网络数据集,只能有一个shp线文 ...

  9. C&num;串口发送数据

    使用指定的端口名.波特率.奇偶校验位.数据位和停止位初始化 SerialPort 类的新实例 SerialPort serialPort = new SerialPort("COM3&quo ...

  10. 基于Keil软件的MCU环境搭建

    我们在开发一款新的MCU的时候,偶尔会遇到Keil软件没有对应的Device设备选型,以下,我们以STM32F407VGT6作为实例来演示整个环境的搭建过程: 一.如下所示,我需要选择的是ST公司的S ...