第一篇:操纵MySQL数据库(1) - 基于MySQLdb库
前言
本文讲解在Python语言中使用MySQLdb库操纵MySQL数据库的方法。
准备工作
1. 安装Python和MySQL
2. 安装MySQLdb (exe下载地址:http://sourceforge.net/projects/mysql-python/?source=typ_redirect)
总体步骤
1. 创建一个数据库;
2. 导入MySQLdb库;
3. 新建一个连接对象;
4. 基于 2 中所创建的对象新建一个游标;
5. 初始化SQL命令字符串;
6. 将 4 中创建的字符串传递进 3 中创建的游标内执行;
7. 从游标内取数并展示;
8. 提交事务;
9. 关闭游标;
10. 关闭连接对象。
注:1为MySQL交互式执行部分,其余为Python代码部分。
代码示例
# -*- coding: utf-8 -*-
# ================================================
# 作者: 方萌
# 创建时间: 20**/**/**
# 版本号: 1.0
# 联系方式: 1505033833@qq.com
# ================================================
import MySQLdb
import sys
# 连接数据库
try:
conn = MySQLdb.connect(host='localhost', user='root', passwd='', db='testDB')
except Exception, e:
print e
sys.exit()
# 获取cursor对象来进行操作
cursor = conn.cursor()
# 创建表
sql = "create table if not exists testTable(name varchar(128) primary key, age int(4))"
# 执行
cursor.execute(sql)
# 插入数据
sql = "insert into testTable(name, age) values ('%s', %d)" % ("方萌", 23)
# 执行
try:
cursor.execute(sql)
except Exception, e:
print e
sql = "insert into testTable(name, age) values ('%s', %d)" % ("张三", 21)
try:
cursor.execute(sql)
except Exception, e:
print e
# 插入多条数据
sql = "insert into testTable(name, age) values (%s, %s)"
val = (("李四", 24), ("王五", 25), ("洪六", 26))
try:
cursor.executemany(sql, val)
except Exception, e:
print e
# 查询出数据
sql = "select * from testTable"
cursor.execute(sql)
# 从游标中取出所有数据
alldata = cursor.fetchall()
# 如果有数据返回,就循环输出, alldata是由个二维的元组构成的元组。
if alldata:
for rec in alldata:
print rec[0], rec[1]
# 提交事务
cursor.commit() # 关闭游标和连接对象
cursor.close()
conn.close()
运行结果

小结
使用Python连接数据库非常简单方便。
第一篇:操纵MySQL数据库(1) - 基于MySQLdb库的更多相关文章
- 第二篇:操纵MySQL数据库(2) - 基于ORM思想的SQLAlchemy库
前言 本文讲解在Python语言中使用SQLAlchemy库操纵MySQL数据库的方法. 由于具体内容涉及较多,本文仅以插入及展示数据为例,更多内容请查阅有关文档. ORM ORM也即对象 - 关系映 ...
- 从Excel中读取数据并批量写入MySQL数据库(基于MySQLdb)
一.Excel内容如下,现在需要将Excel中的数据全部写入的MySQL数据库中: 二.连接MySQL的第三方库使用的是“MySQLdb”,代码如下: # -*- coding:utf-8 -*-im ...
- MySQL 第一篇:初识数据库
一 数据库管理软件的由来 基于我们之前所学,数据要想永久保存,都是保存于文件中,毫无疑问,一个文件仅仅只能存在于某一台机器上. 如果我们暂且忽略直接基于文件来存取数据的效率问题,并且假设程序所有的组件 ...
- python、第一篇:初识数据库
一 数据库管理软件的由来 基于我们之前所学,数据要想永久保存,都是保存于文件中,毫无疑问,一个文件仅仅只能存在于某一台机器上. 如果我们暂且忽略直接基于文件来存取数据的效率问题,并且假设程序所有的组件 ...
- Django进阶Model篇001 - mysql 数据库的配置
django 默认支持sqlite.mysql.oracle.postgresql数据库,像db2和sqlserver之类的数据库需要第三方的支持,具体详见: https://docs.djangop ...
- 第一篇:Mysql操作初级
Mysql操作初级 Mysql操作初级 本节内容 数据库概述 数据库安装 数据库操作 数据表操作 表内容操作 1.数据库概述 数据库管理系统叫做DBMS 1.什么是数据库 ? 答:数据的仓库,如: ...
- pdo操纵mysql数据库
PDO是mysql数据库操作的一个公用类了,我们不需要进行自定类就可以直接使用pdo来操作数据库了,但是在php默认配置中pdo是未开启所以我们必须先在php.ini中开启它才可以使用,下文我会讲到. ...
- [异常篇]001.MySQL数据库忘记root密码解决办法[转载]
MySQL数据库忘记root密码解决办法 1.在运行输入services.msc打开服务窗体,找到MYSQL服务.右键停止将其关闭.如图: 2.在运行输入cmd打开终端. 3.找到MYSQL的安装目录 ...
- 42.通过原生SQL语句进行操纵mysql数据库
views.py文件中: from django.shortcuts import render # 导入connection模块 from django.db import connection d ...
随机推荐
- SUSE-11 本地 zypper 配置
配置本地 zypper 目的: 安装 SUSE-11 后想要再添加或删除软件组件将比较麻烦.通过配置本地 zypper 将可以从下载的软件仓库(repository)中安装软件包. 本地 zypp ...
- 优雅使用 illuminate/database 包中的 Collection
优雅使用 illuminate/database 包中的 Collection 或许你很抵抗使用 Laravel , 但是你没有理由不喜欢使用 illuminate/database.这是一个 ORM ...
- JQuery 验证框架
设计完美,可扩展性好,以后就用他了. http://docs.jquery.com/Plugins/Validation /**//** * @author ming */ $(document) ...
- 03-PHP-memcached
[安装memcached] [安装 libevent] $ tar zxvf libevent-2.0.20-stable.tar.gz $ cd libevent-2.0.20-stable/ $ ...
- Go语言极速入门手册
Github: https://github.com/coderzh/CodeTips /* gotips_test.go: Golang速学速查速用代码手册 Source: github.com/c ...
- 如何在关闭ssh连接的情况下,让程序继续运行?
[http://blog.csdn.net/smstong/article/details/5872309] 对Unix,Linux类服务器维护经常是通过ssh完成的,而有些操作比较费时,如更新程序等 ...
- python学习:匿名函数
Python 函数 lambda 匿名函数 -lambda 函数是一种快速定义单行的最小函数,可以用在任何需要函数的地方. def fun(x,y): return x*y fu ...
- ps色彩范围抠章
1.在photoshop打开需要抠公章的图像文件2.使用椭圆形选区工具,ALT+SHIFT+鼠标左键,选择章的范围 2.CTRL+J,复制图层,得到图层1,隐藏背景 3.CTRL+L,调整色阶,拖动两 ...
- Spring实战思维导图
简要包含Spring的Bean.AOP.事务.容器等方面:
- Redis缓存 序列化对象存储乱码问题
使用Redis缓存对象会出现下图现象: 键值对都是乱码形式. 解决以上问题: 如果是xml配置的 我们直接注入官方给定的keySerializer,valueSerializer,hashKeySer ...