python学习之操作mysql
2014-05-27 13:14
405 查看
欢迎点击个人博客 http://www.iwangzheng.com/
刚开始学python,所以很多代码都需要在ipython里尝试一下。今天记录的是最基本的操作mysql数据库。
写数据库连接操作的时候,仿佛回到了当年在前两家公司写asp.net的感觉。
1.首先在mysql数据库里新建个数据库
2.开始写python代码
查看:
写到这里认为万事大吉喽,去mysql里一看发现数据没进来,找了原因才知道这是与表的类型有关。
因为用的是InnoDB,不是MyISAM, MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已经外部键等高级数据库功能。MyISAM的读性能是比Innodb强不少的.
所以只要加上一句conn.commit(),数据库里就可以看到记录了
刚开始学python,所以很多代码都需要在ipython里尝试一下。今天记录的是最基本的操作mysql数据库。
写数据库连接操作的时候,仿佛回到了当年在前两家公司写asp.net的感觉。
1.首先在mysql数据库里新建个数据库
create database db_02 default charset utf8; create table user (id int auto_increment primary key,username char(20),email char(20));
2.开始写python代码
import MySQLdb conn = MySQLdb.connect(user=’root’,host=’localhost’,passwd=”) conn.select_db(‘db_02′) cursor =conn.cursor() sql = ‘insert into user(name,email) values(“andy”,”andy@163.com”)’ cursor.execute(sql) ———————————————— cursor.execute(‘insert into user(name,email) values(“andy”,”andy@163.com”)’)
查看:
In [14]: sql=’select * from user’ In [15]: cur.execute(sql) Out[15]: 2L In [16]: cur.fetchone() Out[16]: (1L, ‘andy’, ‘andy@163.com’, None) In [17]: cur.fetchone() Out[17]: (2L, ‘andy’, ‘andy@163.com’, None) In [19]: cur.execute(sql) Out[19]: 2L In [20]: cur.fetchall() Out[20]: ((1L, ‘andy’, ‘andy@163.com’, None), (2L, ‘andy’, ‘andy@163.com’, None)) 最后是 cursor.close() conn.close()
写到这里认为万事大吉喽,去mysql里一看发现数据没进来,找了原因才知道这是与表的类型有关。
mysql> show create table user; +——-+————————————————————————————– | Table | Create Table +——-+————————————————————————————– | user | CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` char(20) NOT NULL, `email` char(20) NOT NULL, `password` char(200) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 | +——-+————————————————————————————–
因为用的是InnoDB,不是MyISAM, MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已经外部键等高级数据库功能。MyISAM的读性能是比Innodb强不少的.
所以只要加上一句conn.commit(),数据库里就可以看到记录了
相关文章推荐
- 【python学习.Mysql的基本操作使用】
- python学习 操作mysql 环境搭建
- python学习笔记十一:操作mysql
- python学习—Day26—python的mysql操作
- mysql学习笔记---在python上操作mysql
- python开发学习-day09(队列、多路IO阻塞、堡垒机模块、mysql操作模块)
- Python学习:操作MySQL时,怎样把元组作为查询条件,传递过去
- Python学习总结笔记(9)-- MySQL数据库操作之mysql-connector
- [Python]Python操作/管理Mysql学习(一)
- 【python学习】操作mysql
- Python 学习笔记 - 操作MySQL
- python之MySQL学习——数据操作
- Python学习笔记——MySQL的基本操作(2)
- python 学习笔记-操作mysql
- python 学习第十一课 上下文管理 paramiko 堡垒机 mysql操作
- mysql模块学习:python操作MySQL数据库
- Python学习:对MySQL实现简单的无限极分类操作
- python学习之数据库操作(mysql_ubuntu版)
- Memcache学习系列(二):Memcache和mysql交互流程操作原理说明