我们想要在我们的mython程序中使用mysql,首先需要安装pymysql模块,安装方式可以使用cmd命令安装,

pip3.x install pymysql

首先在我们连接数据库之前先创建一个user表,方便测试功能;

CREATE TABLE `user`(
id TINYINT AUTO_INCREMENT KEY,
name CHAR(15) NOT NULL UNIQUE,
password VARCHAR(30) NOT NULL
)ENGINE=INNODB CHARSET=UTF8;

INSERT user (name,password)
VALUES
('moud','123'),
('linda','123'),
('tom','123');



2 使用Python脚本实现增删改查和事务处理,源码如下:



# encoding:utf-8
# Author:"richie"
# Date:9/14/2017
import pymysql conn = pymysql.connect(
host = 'localhost',
user= 'root',
password='',
database='test',
charset='utf8') # 获取游标
cursor = conn.cursor() # 插入数据
sql = """INSERT IGNORE INTO user (name,password) VALUES (%s,%s)"""
data = ('mimi','')
# cursor.execute(sql,data)
conn.commit()
print('成功插入',cursor.rowcount,'条数据') # REPLACE works exactly like INSERT sql = """REPLACE INTO user (name,password) VALUES (%s,%s)"""
data = ('mimi','')
cursor.execute(sql,data)
conn.commit()
print('成功插入',cursor.rowcount,'条数据')
# 修改数据 sql = """UPDATE user SET password=%s WHERE id=%s"""
data = ('',1)
cursor.execute(sql,data)
conn.commit()
print('成功修改',cursor.rowcount,'条数据') # 查询数据
sql = """SELECT name,password FROM user WHERE id = %s"""
data = (2,)
cursor.execute(sql,data)
for row in cursor.fetchall():
print("name:%s\tpasswd:%s" % row)
print('共查找出',cursor.rowcount,'条数据') # # 删除数据
sql = """DELETE FROM user WHERE id = %s"""
data = (1,)
cursor.execute(sql,data)
conn.commit()
print('成功删除',cursor.rowcount,'条数据') cursor.close()
conn.close()

MYSQL:python 3.x连接数据库的方式的更多相关文章

  1. python 3.6连接数据库(pymysql方式)

    pymysql 模块可以通过 pip 安装.但如果你使用的是 pycharm IDE,则可以使用 project python 安装第三方模块. [File] >> [settings] ...

  2. PDO的三种连接数据库的方式

    PDO的三种连接数据库的方式   PDO的出现是为了解决PHP与各个数据库的连接处理都有各自的函数的问题,它的高度抽象,使得使用起来极其的方便.由于最常用的搭配就是PHP+Mysql,所以这里就以连接 ...

  3. mysql python image 图像存储读取

    最近做一些数据库调研的工作,目标是实现影像更快的入库.出库.查询,并实现并行访问等操作. 将结果总结成一个mysqlImg类. 关于mongodb的图像存储,参见http://www.cnblogs. ...

  4. Mysql查看版本号的五种方式介绍

    Mysql查看版本号的五种方式介绍 作者: 字体:[增加 减小] 类型:转载 时间:2013-05-03   一.使用命令行模式进入mysql会看到最开始的提示符;二.命令行中使用status可以看到 ...

  5. mysql级联更新的两种方式:触发器更新和外键

    1.mysql级联更新有两种方式:触发器更新和外键更新. 2.触发器更新和外键更新的目的都是为了保证数据完整性. 我们通常有这样的需求:删除表Table 1中记录,需要同时删除其它表中与Table 1 ...

  6. node-mongodb-native的几种连接数据库的方式

    h1,h2,h3,h4,h5,h6,p,blockquote { margin: 0; padding: 0;}body { font-family: "Helvetica Neue&quo ...

  7. CentOS7安装MySQL的方法之RPM包方式

        CentOS7安装MySQL的方法之RPM包方式        

  8. SQL优化 MySQL版 - 索引分类、创建方式、删除索引、查看索引、SQL性能问题

    SQL优化 MySQL版  - 索引分类.创建方式.删除索引.查看索引.SQL性能问题 作者 Stanley 罗昊 [转载请注明出处和署名,谢谢!] 索引分类 单值索引 单的意思就是单列的值,比如说有 ...

  9. 基础知识:编程语言介绍、Python介绍、Python解释器安装、运行Python解释器的两种方式、变量、数据类型基本使用

    2018年3月19日 今日学习内容: 1.编程语言的介绍 2.Python介绍 3.安装Python解释器(多版本共存) 4.运行Python解释器程序两种方式.(交互式与命令行式)(♥♥♥♥♥) 5 ...

随机推荐

  1. 如何处理使用js兼容所有浏览器的问题

    首先:如何处理兼容问题 1.如果两个都是属性,用逻辑||做兼容 2.如果有一个是方法,用三元做兼容 3.如果是多个属性或方法,封装函数做兼容 分享两个小知识点: 1.取消拖拽的默认行为: docume ...

  2. 自学Zabbix1.3-zabbix进程

    默认情况下zabbix包含5个程序:zabbix_agentd.zabbix_get.zabbix_proxy.zabbix_sender.zabbix_server,另外一个zabbix_java_ ...

  3. iOS NSString 文本不同的颜色 标题+文本字体大小 行间距/删除不需要的字符 /以及自适应高度

    #import <Foundation/Foundation.h> @interface TextsForRow : NSObject @property(nonatomic,copy)N ...

  4. PDO绑定含IN的SQL语句的参数注意事项

    PDOStatement::bindParam(),表示将PDO::prepare()语句中的占位符用参数替换掉.注意,在绑定含有IN的SQL多参数语句时要额外小心,比如$stmt = $db-> ...

  5. Intellj Idea使用tomcat部署不成功,死活也找不到解决办法的看这里

    Intellij 周六晚上开发一个简单web项目的,使用tomcat打包部署,死活也没法部署成功,和这个问题怼了6个小时,也没搞清楚具体为什么不能访问页面,但是好在最后还是找了个方法把问题解决了.以下 ...

  6. android中Log类的封装

    1.为了方便的使用Log打印日志,以及后续方便撤销日志打印,所以对Log类进行封装是一件好事. package market.phone; import android.util.Log; /** * ...

  7. Hibernate问题浅析

      1.什么是SessionFactory?什么是Session?httpsession和hibernate的session的有什么区别?     SessionFactory接口负责初始化Hiber ...

  8. Java 银行家算法

    实验存档,代码特别烂.. 测试.java package operating.test; import operating.entity.bank.Bank; import operating.ent ...

  9. Socket相关概念

    lsocket的英文原义是“孔”或“插座”.作为进程通信机制,取后一种意思.通常也称作“套接字”,用于描述IP地址和端口,是一个通信链的句柄.(其实就是两个程序通信用的.) lsocket非常类似于电 ...

  10. 30分钟入门Java

    技术只是工具,文档只是说明书,仅此而已. 写在前面 工作4年有余,盲人摸象般的走过弯路,也投机取巧的领悟到过一些类似"编程本质"的东西.现在开始我计划回顾下我的编程生涯.在这里分享 ...