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应用系统中,数据库性能是导致系统性能瓶颈最主要的原因之一.尤其是在大规模系统中,数据库集群已经成为必备的配置之一.集群的好处主要有:查询 ...
随机推荐
- iOS-引用计数与ARC(转)
以下是关于内存管理的学习笔记:引用计数与ARC. iOS5以前自动引用计数(ARC)是在MacOS X 10.7与iOS 5中引入一项新技术,用于代替之前的手工引用计数MRC(Manual Refer ...
- python使用elasticsearch模块操作elasticsearch
1.创建索引 命令如下 from elasticsearch import Elasticsearch es = Elasticsearch([{"host":"10.8 ...
- 宝塔Linux面板 概述
安装要求: Python版本: 2.6/2.7(安装宝塔时会自动安装) 内存:128M以上,推荐512M以上(纯面板约占系统10M内存) 硬盘:100M以上可用硬盘空间(纯面板约占20M磁盘空间) 系 ...
- Efficiency optimizing
*low efficiency l_it_alv_stpox[] = g_it_alv_stpox[]. SORT l_it_alv_stpox BY zz_matnr idnrk. LOOP AT ...
- SY-SUBRC
一般是对read table和select语句使用. loop at g_it_data where level < <wa_data>-level and seq < < ...
- day 24 socket 黏包
socket 套接字的使用: tcp是基于链接的,必须先启动服务端,然后再启动客户端去链接服务端 server 端 import socket sk = socket.socket() # 实例化一个 ...
- django static 无法正确加载目录下的css
在static->web目录下添加CSS后该css文件一直报404错误,解决问题: 在setting.py文件添加: STATICFILES_DIRS = [ os.path.join(BASE ...
- Tomcat登陆mysql的密码设置
在登陆mysql的密码和数据库密码不一致时,可以修改Mysql数据库密码或者修改连接Mysql的配置文件: 1.修改连接Tomcat里连接Mysql的配置文件 需要修改两个配置文件 ,一个是在tom ...
- mysql怎么查看是否支持分区
mysql从5.1开始支持分区功能 查询命令如下: mysql> show plugins like '%partiotion%'; mysql> show variables like ...
- three.js raycaster射线碰撞的坑 (当canvas大小 不是屏幕大小是解决拾取物体的办法)
这里只是记录一下坑,方便查阅,内容主要援引自:three.js Raycaster 射线拾取 canvas不占满整屏时射线拾取存在偏差 1. 世界坐标系: 世界坐标系位于屏幕的中心(0,0,0),往右 ...