MYSQL:python 3.x连接数据库的方式
我们想要在我们的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连接数据库的方式的更多相关文章
- python 3.6连接数据库(pymysql方式)
pymysql 模块可以通过 pip 安装.但如果你使用的是 pycharm IDE,则可以使用 project python 安装第三方模块. [File] >> [settings] ...
- PDO的三种连接数据库的方式
PDO的三种连接数据库的方式 PDO的出现是为了解决PHP与各个数据库的连接处理都有各自的函数的问题,它的高度抽象,使得使用起来极其的方便.由于最常用的搭配就是PHP+Mysql,所以这里就以连接 ...
- mysql python image 图像存储读取
最近做一些数据库调研的工作,目标是实现影像更快的入库.出库.查询,并实现并行访问等操作. 将结果总结成一个mysqlImg类. 关于mongodb的图像存储,参见http://www.cnblogs. ...
- Mysql查看版本号的五种方式介绍
Mysql查看版本号的五种方式介绍 作者: 字体:[增加 减小] 类型:转载 时间:2013-05-03 一.使用命令行模式进入mysql会看到最开始的提示符;二.命令行中使用status可以看到 ...
- mysql级联更新的两种方式:触发器更新和外键
1.mysql级联更新有两种方式:触发器更新和外键更新. 2.触发器更新和外键更新的目的都是为了保证数据完整性. 我们通常有这样的需求:删除表Table 1中记录,需要同时删除其它表中与Table 1 ...
- node-mongodb-native的几种连接数据库的方式
h1,h2,h3,h4,h5,h6,p,blockquote { margin: 0; padding: 0;}body { font-family: "Helvetica Neue&quo ...
- CentOS7安装MySQL的方法之RPM包方式
CentOS7安装MySQL的方法之RPM包方式
- SQL优化 MySQL版 - 索引分类、创建方式、删除索引、查看索引、SQL性能问题
SQL优化 MySQL版 - 索引分类.创建方式.删除索引.查看索引.SQL性能问题 作者 Stanley 罗昊 [转载请注明出处和署名,谢谢!] 索引分类 单值索引 单的意思就是单列的值,比如说有 ...
- 基础知识:编程语言介绍、Python介绍、Python解释器安装、运行Python解释器的两种方式、变量、数据类型基本使用
2018年3月19日 今日学习内容: 1.编程语言的介绍 2.Python介绍 3.安装Python解释器(多版本共存) 4.运行Python解释器程序两种方式.(交互式与命令行式)(♥♥♥♥♥) 5 ...
随机推荐
- canvas雪花
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- mock.js的真实数据模拟
哈哈,怎么说,这应该是我的第一个随笔了,毕竟前端之路上一直在学习并且各位大神们的经验,虽然也有不少的坑,但是总是收获比较多,所以我也想把一些收获记录下来,有需要的可以参考参考. 网上看了不少大神很多例 ...
- TableML-GUI篇(Excel编译/解析工具)
项目情况 本文接上篇TableML Excel编译/解析工具,本文主要介绍GUI工具的使用,及配置项,如果你想了解此工具更加详细的说明,请阅读上篇文章. 项目地址:https://github.com ...
- 「mysql优化专题」高可用性、负载均衡的mysql集群解决方案(12)
一.为什么需要mysql集群? 一个庞大的分布式系统的性能瓶颈中,最脆弱的就是连接.连接有两个,一个是客户端与后端的连接,另一个是后端与数据库的连接.简单如图下两个蓝色框框(其实,这张图是我在悟空问答 ...
- laravel基本信息
1.Bundle是Laravel的扩展包组织形式或称呼.Laravel的扩展包仓库已经相当成熟了,可以很容易的帮你把扩展包(bundle)安装到你的应用中.你可以选择下载一个扩展包(bundle)然后 ...
- seleniumPO模式
一.框架目录结构 二.代码 2.1page层代码 package com.mianshui.page; import org.openqa.selenium.WebElement; import or ...
- 【JMeter】获取json响应报文中数组长度
import com.jayway.jsonpath.JsonPath; import com.jayway.jsonpath.Predicate; import net.minidev.json.J ...
- 西门子flexable创建画面
一.wincc flexable 创建画面包括以下四点 二.具体操作 1.组态画面模板 1)使用该模板的画面包括该模板的所有组件,一个模板也是一个画面 2)给模板上添加一个文本域如下图,则画面1也会显 ...
- hbase rest api接口链接管理【golang语言版】
# go-hbase-resthbase rest api接口链接管理[golang语言版]关于hbase的rest接口的详细信息可以到官网查看[http://hbase.apache.org/boo ...
- 谈谈序列化—实体bean一定要实现Serializable接口?
导读:最近在做项目的过程中,发现一个问题,就是我们最开始的时候,传递参数包括返回类型,都有map类型.但是由于map每次都要匹配key值,很麻烦.所以在之后就将参数传递和返回类型全都改成了实体bean ...