Python学习笔记六:数据库操作
一: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学习笔记六:数据库操作的更多相关文章
- python学习笔记(六)---文件操作与异常处理机制
文件读取 读取整个文件 要读取文件,需要一个包含几行文本的文件.下面首先来创建一个文件,它包含精确到小数点后30位的圆周率值,且在小数点后每10位处都换行: pi_digits.txt 3.14159 ...
- Python学习笔记六
Python课堂笔记六 常用模块已经可以在单位实际项目中使用,可以实现运维自动化.无需手工备份文件,数据库,拷贝,压缩. 常用模块 time模块 time.time time.localtime ti ...
- Python学习笔记 使用数据库SQlite Mysql
SQLite是一种嵌入式数据库,它的数据库就是一个文件.由于SQLite本身是C写的,而且体积很小,所以,经常被集成到各种应用当中, 甚至在IOS和Android的APP中都可以集成 Python就内 ...
- ThinkPHP 学习笔记 ( 三 ) 数据库操作之数据表模型和基础模型 ( Model )
//TP 恶补ing... 一.定义数据表模型 1.模型映射 要测试数据库是否正常连接,最直接的办法就是在当前控制器中实例化数据表,然后使用 dump 函数输出,查看数据库的链接状态.代码: publ ...
- Python学习笔记_03:简单操作MongoDB数据库
目录 1. 插入文档 2. 查询文档 3. 更新文档 4. 删除文档 1. 插入文档 # -*- coding: UTF-8 -*- import datetime from pymongo im ...
- python学习笔记六 面向对象相关下(基础篇)
面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使用(可以将多函数中公用的变量封装到对象中) 对象,根据模板创建的 ...
- Symfony2学习笔记之数据库操作
数据库和Doctrine让我们来面对这个对于任何应用程序来说最为普遍最具挑战性的任务,从数据库中读取和持久化数据信息.幸运的是,Symfony和Doctrine进行了集成,Doctrine类库全部目标 ...
- python学习笔记---文件的操作
数据的保存: 1.内存:常用的变量2.文件:文本内容,二进制的文件内容3.数据库: 读文件:1.要读取的文件路径一定要存在.2.打开存在的文件:open函数 参数1:文件的路径,相对的或者是绝对 ...
- python学习笔记——mongodb数据库
1 概述 1.1 文件管理阶段 优点:可以长期保存 能存储大量数据 缺点:没有结构化的组织 查找不方便 数据容易冗余 1.2 数据库管理阶段 有文件存储的优点,同时解决了文件存储的问题 缺点 : 操作 ...
随机推荐
- docker查看容器的网络ip
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name_or_id 可直 ...
- 神盾局特工第四季/全集Agents Of SHIELD迅雷下载
英文全名Agents Of SHIELD,第4季(2016)ABC. 本季看点:<神盾局特工>(Agents Of SHIELD)第三季季终集里,我们终于知道谁死了……但死的不是一个,而是 ...
- Android之多种Bitmap效果
1. 将图片变为圆角 2. 获取缩略图图片 3. LOMO特效 4. 旧时光特效 5. 暖意特效 6. 根据饱和度.色相.亮度调整图片 7. 添加图片外边框 8. 添加内边框 9. 创建一个缩放的图片 ...
- actuator监控
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring- ...
- centos 7 版本升级nginx
1.首先下载对应最新版nginx wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ng ...
- Spring Boot中application.yml与bootstrap.yml的区别(转载)
说明:其实yml和properties文件是一样的原理,主要是说明application和bootstrap的加载顺序.且一个项目上要么yml或者properties,二选一的存在. Bootstra ...
- main函数的参数argc和argv
版权声明:本文为博主原创文章,转载请注明CSDN博客源地址!共同学习,一起进步~ https://blog.csdn.net/Eastmount/article/details/20413773 该篇 ...
- 输入两个很大的正数(用C字符串表示),输出他们的乘积,将设不考虑非法输入。
#include<iostream> #include<cassert> void multiply(const char *a,const char *b) { assert ...
- kafka-python的gevent模式和kafka的兼容性
使用gevent会杀死kafka的consumer线程:据查:kafka-python对gevent的支持不是太好,可以使用pykafka:但是可以kafka-python可以结合eventlet使用 ...
- bat 批处理切换到当前脚本所在文件夹
bat 批处理切换到当前脚本所在文件夹 切换到当前脚本所在的文件夹 ? 1 cd %~dp0 另外附上一些bat基本内容 —————————————————————————————— 批处理常用 ...