一:Python操作数据库的流程

二:开发环境准备

1:开发工具PyCharm

2:Python操作mysql的工具:需要安装Python-Mysql Connector,网址:https://sourceforge.net/projects/mysql-python/ ,下载完成后点击启动安装即可。

3:数据库桌面工具:SQLYog

三:Python操作数据库的两大对象之数据库连接对象——Connection

connection主要用于建立Python与数据库之间的网络连接。

创建方法:MySQLdb.Connect(参数)

参数列表主要有:

数据库连接对象常用方法:

测试:

import MySQLdb

conn = MySQLdb.connect(host="127.0.0.1",port=3306,user="root",passwd='root',db='testpython',charset='utf8')
cur=conn.cursor() print conn
print cur cur.close()
conn.close() 结果:
<_mysql.connection open to '127.0.0.1' at 2a449b8>
<MySQLdb.cursors.Cursor object at 0x02AE8A10>

四:Python操作数据库的两大对象之数据库连接对象——Cursor

游标对象Cursor,用于执行具体的数据库操作语句以及获取结果。

cursor支持以下方法调用:

三个fetchXX方法,可以对 execute方法执行的结果进行遍历;rowcount方法可以获取execute方法对数据库操作的记录行数。

五:增删查改操作

查:主要使用execute()/fetchXX语句;

增、改、删:需要关闭自动提交事务(MySQLdb模块默认关闭了自动提交)、使用execute()语句执行操作、捕捉异常进行回滚/执行完毕提交事务

import MySQLdb

#1:创建数据库连接
conn = MySQLdb.connect(host="127.0.0.1",port=3306,user="root",passwd='root',db='testpython',charset='utf8')
#2:创建cursor
cur=conn.cursor() #3:使用cursor执行查询
cur.execute("select * from test")
first=cur.fetchone()
print first #4:在try-except语句块中执行增、删、改操作
try:
cur.execute("insert into test(say) VALUES ('the first content')")
print cur.rowcount cur.execute("update test set say='I have been updated' where id = 1")
print cur.rowcount cur.execute("select * from test")
all = cur.fetchall()
print all cur.execute("delete from test where id = 1")
print cur.rowcount cur.execute("select * from test")
all = cur.fetchall()
print all
#5:提交事务
conn.commit()
except Exception:
#6:捕捉异常进行回滚
conn.rollback()
finally:
#7:关闭cursor和connection
cur.close()
conn.close()

Python学习笔记六:数据库操作的更多相关文章

  1. python学习笔记(六)---文件操作与异常处理机制

    文件读取 读取整个文件 要读取文件,需要一个包含几行文本的文件.下面首先来创建一个文件,它包含精确到小数点后30位的圆周率值,且在小数点后每10位处都换行: pi_digits.txt 3.14159 ...

  2. Python学习笔记六

    Python课堂笔记六 常用模块已经可以在单位实际项目中使用,可以实现运维自动化.无需手工备份文件,数据库,拷贝,压缩. 常用模块 time模块 time.time time.localtime ti ...

  3. Python学习笔记 使用数据库SQlite Mysql

    SQLite是一种嵌入式数据库,它的数据库就是一个文件.由于SQLite本身是C写的,而且体积很小,所以,经常被集成到各种应用当中, 甚至在IOS和Android的APP中都可以集成 Python就内 ...

  4. ThinkPHP 学习笔记 ( 三 ) 数据库操作之数据表模型和基础模型 ( Model )

    //TP 恶补ing... 一.定义数据表模型 1.模型映射 要测试数据库是否正常连接,最直接的办法就是在当前控制器中实例化数据表,然后使用 dump 函数输出,查看数据库的链接状态.代码: publ ...

  5. Python学习笔记_03:简单操作MongoDB数据库

    目录 1. 插入文档 2. 查询文档 3. 更新文档 4. 删除文档   1. 插入文档 # -*- coding: UTF-8 -*- import datetime from pymongo im ...

  6. python学习笔记六 面向对象相关下(基础篇)

    面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使用(可以将多函数中公用的变量封装到对象中) 对象,根据模板创建的 ...

  7. Symfony2学习笔记之数据库操作

    数据库和Doctrine让我们来面对这个对于任何应用程序来说最为普遍最具挑战性的任务,从数据库中读取和持久化数据信息.幸运的是,Symfony和Doctrine进行了集成,Doctrine类库全部目标 ...

  8. python学习笔记---文件的操作

    数据的保存: 1.内存:常用的变量2.文件:文本内容,二进制的文件内容3.数据库: 读文件:1.要读取的文件路径一定要存在.2.打开存在的文件:open函数    参数1:文件的路径,相对的或者是绝对 ...

  9. python学习笔记——mongodb数据库

    1 概述 1.1 文件管理阶段 优点:可以长期保存 能存储大量数据 缺点:没有结构化的组织 查找不方便 数据容易冗余 1.2 数据库管理阶段 有文件存储的优点,同时解决了文件存储的问题 缺点 : 操作 ...

随机推荐

  1. 《学习R》

    <学习R> 基本信息 原书名:Learning R 原出版社: O'Reilly Media 作者: (美)Richard Cotton 译者: 刘军 丛书名: 图灵程序设计丛书 出版社: ...

  2. Java比较两个Date日期的大小

    import java.util.*; import java.text.ParseException; import java.text.SimpleDateFormat; class Test{ ...

  3. 单元测试利器 JUnit 4

    引言 毋庸置疑,程序员要对自己编写的代码负责,您不仅要保证它能通过编译,正常地运行,而且要满足需求和设计预期的效果.单元测试正是验证代码行为是否满足预期的有效手段之一.但不可否认,做测试是件很枯燥无趣 ...

  4. Java NIO Test Case

    package org.zwl.test.nio; import java.io.IOException; import java.net.InetSocketAddress; import java ...

  5. 洛谷 P1164 小A点菜

    题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e ...

  6. 第一章 Typescript 介绍

    Typescript 介绍 一.Typescript 简介 Typescript 是微软开发的 Javascript 的超集,Typescript 兼容 Javascript,可以载入 Javascr ...

  7. js将滚动条滚动到指定位置的方法

    代码如下(主要是通过设置Location的hash属性): <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN& ...

  8. 八一八cvs vss svn和git比较

    特征 CVS Git Mercurial Subversion 是否原子提交 CVS: 没有. CVS提交不是原子的 Git: 是的. 提交都是原子的 Mercurial: 是的 Subversion ...

  9. 大规模SNS中兴趣圈子的自动挖掘

    转自:http://www.infoq.com/cn/articles/zjl-sns-automatic-mining 一.为何要在大规模SNS中挖掘兴趣圈子 随着国外的facebook.twitt ...

  10. 简单介绍Ceph分布式存储集群

    在规划Ceph分布式存储集群环境的时候,对硬件的选择很重要,这关乎整个Ceph集群的性能,下面梳理到一些硬件的选择标准,可供参考: 1)CPU选择 Ceph metadata server会动态的重新 ...