它是否返回行数?

时间:2016-11-05 05:38:39

标签: python mysql

这是我的MySQL数据库:

create table 'blogs' (
    'id' int(10) primary key auto_increment,
    'title' varchar(29) not null,
    'text' varchar(500) not null
) engine=innodb default charset=utf8mb4;

我使用PyMySQL连接它,然后我这样做:

cur = connection.cursor().execute('select title, text from blogs order by id desc')

entries = [dict(title=row[0], text=row[1]) for row in cur.fetchall()]

它提出了这个问题:

AttributeError: 'int' object has no attribute 'fetchall'

我尝试type(cur),显然我得到int

我尝试print(cur)并获得了0

insert blogs(title,text) values ('222','qwqwqwq'); print(cur) = 1

之后

insert blogs(title,text) values ('333','qwqw222'); print(cur) = 2

之后

cur行是blogs吗?

我如何实现entries = [dict(title=row[0], text=row[1]) for row in cur.fetchall()]

帮助我,谢谢

1 个答案:

答案 0 :(得分:0)

回答你的问题:

是的,它确实返回了多个查询,因为你链接了两个操作1)让游标2)在一个中调用execute并在'\n'中引用最终结果

2)操作将产生整数值,该值给出受影响的行数,该行存储在cur