博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python学习之操作mysql
阅读量:6354 次
发布时间:2019-06-22

本文共 1611 字,大约阅读时间需要 5 分钟。

欢迎点击个人博客 

 

刚开始学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 MySQLdbconn = 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]: 2LIn [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(),数据库里就可以看到记录了

 

 

转载于:https://www.cnblogs.com/iwangzheng/p/3754892.html

你可能感兴趣的文章
秋名山老司机(详解)——bugku
查看>>
RED | Robot Framework集成开发环境
查看>>
育碧同 Mozilla 联手开发 AI 代码助手
查看>>
【实用】面对枯燥的源码,如何才能看得下去?
查看>>
智库说 | 徐远:数字时代的城市潜力
查看>>
《JSP极简教程》jsp c:forEach用法
查看>>
WebSocket详解(六):刨根问底WebSocket与Socket的关系
查看>>
用 Go 写一个轻量级的 ssh 批量操作工具
查看>>
网站设计之合理架构CSS 架构CSS
查看>>
OTP 22.0 RC3 发布,Erlang 编写的应用服务器
查看>>
D语言/DLang 2.085.1 发布,修复性迭代
查看>>
感觉JVM的默认异常处理不够好,既然不好那我们就自己来处理异常呗!那么如何自己处理异常呢?...
查看>>
Java 基础 之 算数运算符
查看>>
Windows下配置安装Git(二)
查看>>
一个最简单的基于Android SearchView的搜索框
查看>>
铁路开通WiFi“钱景”不明
查看>>
Facebook申请专利 或让好友及陌生人相互拼车
查看>>
电力“十三五”规划:地面光伏与分布式的分水岭
查看>>
美联社再告FBI:要求公开请黑客解锁iPhone花费
查看>>
三星电子出售希捷和夏普等四家公司股份
查看>>