python3操作mysql数据库的方法

yipeiwu_com5年前Python基础

软硬件环境

OS X EI Capitan
Python 3.5.1
mysql 5.6

前言

在开发中经常涉及到数据库的使用,而python对于数据库也有多种解决方法。本文以python3中的mysql为例,介绍pymysql模块的使用。

准备数据库

创建一个mysql数据库,名字叫testdb,建立一张表叫testtable,它有3个字段,分别是id,数据类型是INT(11),设为主键、非空、UNSIGNED、AUTO INCREMENT,name,数据类型是VARCHAR(45),设为非空、唯一,sex,数据类型是VARCHAR(45),设为非空

python3 源码

# -*- coding: utf-8 -*-
__author__ = 'djstava@gmail.com'

import logging
import pymysql

class MySQLCommand(object):
  def __init__(self,host,port,user,passwd,db,table):
    self.host = host
    self.port = port
    self.user = user
    self.password = passwd
    self.db = db
    self.table = table

  def connectMysql(self):
    try:
      self.conn = pymysql.connect(host=self.host,port=self.port,user=self.user,passwd=self.password,db=self.db,charset='utf8')
      self.cursor = self.conn.cursor()
    except:
      print('connect mysql error.')

  def queryMysql(self):
    sql = "SELECT * FROM " + self.table

    try:
      self.cursor.execute(sql)
      row = self.cursor.fetchone()
      print(row)

    except:
      print(sql + ' execute failed.')

  def insertMysql(self,id,name,sex):
    sql = "INSERT INTO " + self.table + " VALUES(" + id + "," + "'" + name + "'," + "'" + sex + "')"
    try:
      self.cursor.execute(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 closeMysql(self):
    self.cursor.close()
    self.conn.close()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python买卖股票的最佳时机(基于贪心/蛮力算法)

python买卖股票的最佳时机(基于贪心/蛮力算法)

开始刷leetcode算法题 今天做的是“买卖股票的最佳时机” 题目要求 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你可...

读写json中文ASCII乱码问题的解决方法

今天要帮前端写一个小后台,就是读取数据然后转成json送给他,让他去展示。数据很简单,但是处理的时候遇到了一个问题,文件中涉及到了中文的处理,每次处理完写的json格式就是ASCII码,...

Django 创建后台,配置sqlite3教程

Django 创建后台,配置sqlite3教程

1. 创建project django-admin.py startproject myweb1 2.创建app控制台输入 python manage.py startapp home...

浅谈Python里面小数点精度的控制

要求较小的精度 round()内置方法 这个是使用最多的,刚看了round()的使用解释,也不是很容易懂。round()不是简单的四舍五入的处理方式。 For the built-in...

使用Python生成随机密码的示例分享

生成随机密码这件事情用python来干确实相当的方便,优美的string方法加上choice简直是绝配 make_password.py ###简单几行代码执行即可生成记不住的字符...