Python数据存储 — MySQL数据库操作
本地安装MySQL
调试环境python3.6,调试python操作mysql数据库,首先要在本地或服务器安装mysql数据库。
安装参考:https://mp.csdn.net/postedit/80856033
PyMysql库的安装
在python3.6下我们使用pymysql库:点击下载PyMySQL库
将PyMySQL-0.7.11-py2.py3-none-any.whl文件放在E:\Anaconda3-5.0.1\Scripts文件夹下
  先cd到目录(在cmd中输入) 
    cd \Anaconda3-5.0.1\Scripts
  再安装包
    pip install PyMySQL-0.7.11-py2.py3-none-any.whl
Python中MySQL数据库操作
安装成功后就可以编程代码实现python对mysql数据库的操作了
#python3使用PyMySQL操作MySQL
print("================MySQL数据库=================")
import pymysql.cursors
# 连接数据库
connect = pymysql.Connect(
    host='127.0.0.1',
    port=3306,
    user='root',
    passwd='123456',
    db='note',
    charset='utf8'
)
# 获取游标
cursor = connect.cursor()
#删除表
sql = 'DROP TABLE IF EXISTS student'
cursor.execute(sql)
connect.commit()
print('如果存在表就删除表格')
#创建表格
sql = "CREATE TABLE student(id INTEGER PRIMARY KEY,name TEXT)"
try:
    cursor.execute(sql)
    connect.commit()
except:
    print("表已存在")
print('成功创建表格')
# 插入数据
sql = "INSERT INTO student VALUES(%d,'%s')"
data = (1, 'student1')
cursor.execute(sql % data)
connect.commit()
print('成功插入', cursor.rowcount, '条数据')
# 修改数据
sql = "UPDATE student SET name = '%s' WHERE id = %d "
data = ('student2', 1)
cursor.execute(sql % data)
connect.commit()
print('成功修改', cursor.rowcount, '条数据')
# 查询数据
sql = "SELECT * FROM student WHERE id=%d"
data = (1,)
cursor.execute(sql % data)
for row in cursor.fetchall():
    print("%s" % str(row))
print('共查找出', cursor.rowcount, '条数据')
# 删除数据
sql = "DELETE FROM student WHERE id = %d LIMIT %d"
data = (1, 1)
cursor.execute(sql % data)
connect.commit()
print('成功删除', cursor.rowcount, '条数据')
# 事务处理
sql_1 = "UPDATE student SET name = name + '1' WHERE id = 1 "
try:
    cursor.execute(sql_1)
except Exception as e:
    connect.rollback()  # 事务回滚
    print('事务处理失败', e)
else:
    connect.commit()  # 事务提交
    print('事务处理成功', cursor.rowcount)
# 关闭连接
cursor.close()
connect.close()
| 参数 | 说明 | 
|---|---|
| host(str) | MySQL服务器地址 | 
| port(int) | MySQL服务器端口号 | 
| user(str) | 用户名 | 
| passwd(str) | 密码 | 
| db(str) | 数据库名称 | 
| charset(str) | 连接编码 | 
| 方法 | 说明 | 
|---|---|
| cursor() | 使用该连接创建并返回游标 | 
| commint() | 提交当前事务 | 
| rollback() | 回滚当前事务 | 
| close() | 关闭连接 | 
| 方法 | 说明 | 
|---|---|
| execute(op) | 执行一个数据库的查询命令 | 
| fetchone() | 取得结果集的下一行 | 
| fetchmany(size) | 获取结果集的下几行 | 
| fetchall() | 获取结果集中的所有行 | 
| rowcount() | 返回数据条数或影响条数 | 
| close() | 关闭游标对象 | 
Python数据存储 — MySQL数据库操作的更多相关文章
- python中的MySQL数据库操作        连接   插入   查询    更新    操作
		MySQL数据库 就数据库而言,连接之后就要对其操作.但是,目前那个名字叫做qiwsirtest的数据仅仅是空架子,没有什么可操作的,要操作它,就必须在里面建立“表”,什么是数据库的表呢?下面摘抄自维 ... 
- python sqlalchemy 进行 mysql 数据库操作
		1. 进行mysql数据库的创建,如果已经存在,就相当于进行数据库的连接操作 from sqlalchemy import create_engine from sqlalchemy.ext.decl ... 
- Android开发--数据存储之数据库操作
		简介: SQLite 的介绍: SQLite数据库属于文本型的数据库,它是以文本的形式来保存的.Android提供了对 SQLite 数据库的完全支持,应用程序中的任何类都可以通过名称来访问任何的数据 ... 
- Python实战之MySQL数据库操作
		1. 要想使Python可以操作MySQL数据库,首先需要安装MySQL-python包,在CentOS上可以使用一下命令来安装 $ sudo yum install MySQL-python 2. ... 
- Python - 数据存储与数据库简介
- Python/MySQL(四、MySQL数据库操作)
		Python/MySQL(四.MySQL数据库操作) 一.数据库条件语句: case when id>9 then ture else false 二.三元运算: if(isnull(xx)0, ... 
- 10分钟教你Python+MySQL数据库操作
		欲直接下载代码文件,关注我们的公众号哦!查看历史消息即可! 本文介绍如何利用python来对MySQL数据库进行操作,本文将主要从以下几个方面展开介绍: 1.数据库介绍 2.MySQL数据库安装和设置 ... 
- Python进行MySQL数据库操作
		最近开始玩Python,慢慢开始喜欢上它了,以前都是用shell来实现一些自动化或者监控的操作,现在用Python来实现,感觉更棒,Python是一门很强大的面向对象语言,所以作为一个运维DBA或者运 ... 
- 百万年薪python之路  --  MySQL数据库之  存储引擎
		MySQL之存储引擎 一. 存储引擎概述 定义: 存储引擎是mysql数据库独有的存储数据.为数据建立索引.更新数据.查询数据等技术的实现方法  首先声明一点: 存储引擎这个概念只有MySQL才有. ... 
随机推荐
- Thinkphp 3.2使用Redis
			(1)直接调用框架自带的Redis类: 路径:\ThinkPHP\Library\Think\Cache\Driver\Redis.class.php. public function test(){ ... 
- bit manipulation
			WIKI Bit manipulation is the act of algorithmically manipulating bits or other pieces of data shorte ... 
- 【转载】同步和互斥的POSIX支持(互斥锁,条件变量,自旋锁)
			上篇文章也蛮好,线程同步之条件变量与互斥锁的结合: http://www.cnblogs.com/charlesblc/p/6143397.html 现在有这篇文章: http://blog.cs ... 
- 再说javascript 的__proto__ 和prototype 属性
			过了一段时间,没写 原生的 javascript 的了,感觉天天在用框架写代码,框架写代码完全限定死了你所需要思考的东西,只是在处理一些业务逻辑,真正的代码 都感觉不会写了. 突然发现,框架用的不熟悉 ... 
- StringUtil内部方法差异
			StringUtil 的 isBlank.isEmply.isNotEmpty.isNotBlank 区别 String.trim()方法: trim()是去掉首尾空格 append(Stri ... 
- pagePiling.js - 创建美丽的全屏滚动效果
			在线演示 在线演示 本地下载 全屏滚动效果是近期很流行的网页设计形式,带给用户良好的视觉和交互体验. pagePiling.js 这款jQuery插件能够帮助前端开发者轻松实现这样的效果.支持全部的主 ... 
- hdoj 1533 Going Home 【最小费用最大流】【KM入门题】
			Going Home Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tota ... 
- 简单JS全选、反选代码
			1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org ... 
- Android第一个个人APP(帐号助手)
			第一个app上线了,关于帐号保存的一个app.本地保存,无须联网. 下载地址为:http://android.myapp.com/myapp/detail.htm?apkName=com.weeky. ... 
- C#数据库连接池 MySql SqlServer
			查阅了一天的资料来学习MySql数据库连接池,终于在一篇博文上找到了,自己也整理了一下,希望对大家有用处 1. 建立连接池 using MySql.Data.MySqlClient; using Sy ... 
