关于python中的查询数据库内容中用到的fetchone()函数和fetchall()函数(转)

最近在用python操作mysql数据库时,碰到了下面这两个函数,标记一下:

fetchone() :

返回单个的元组,也就是一条记录(row),如果没有结果 则返回 None

fetchall() :

返回多个元组,即返回多个记录(rows),如果没有结果 则返回 ()

需要注明:在MySQL中是NULL,而在Python中则是None

用法如下所示:

fetchone()用法:

cur.execute("select host,user,password from user where user=‘%s‘" %acc)
jilu = cur.fetchone()  ##此时 通过 jilu[0],jilu[1],jilu[2]可以依次访问host,user,password

fetchall()用法:

cur.execute("select * from user")

如果select本身取的时候有多条数据时:

cursor.fetchone():将只取最上面的第一条结果,返回单个元组如(‘id‘,‘title‘),然后多次使用cursor.fetchone(),依次取得下一条结果,直到为空。

cursor.fetchall() :将返回所有结果,返回二维元组,如((‘id‘,‘title‘),(‘id‘,‘title‘)),

如果select本身取的时候只有一条数据时:

cursor.fetchone():将只返回一条结果,返回单个元组如(‘id‘,‘title‘)。

cursor.fetchall() :也将返回所有结果,返回二维元组,如((‘id‘,‘title‘),),

备注:其中的id和title为具体的内容

python在mysql在使用fetchall或者是fetchone时,综合起来讲,fetchall返回二维元组(元组中含有元组),fetchone只返回一维元组。

原文地址:https://www.cnblogs.com/z-x-y/p/9055509.html

时间: 2024-08-25 17:07:00

关于python中的查询数据库内容中用到的fetchone()函数和fetchall()函数(转)的相关文章

Android实现EditText查询数据库内容

我们在app开发的时候需要使用数据库,那么如何使用EditText查询数据库内容呢? 首先我们要先添加一个布局,代码如下 其中添加了一个EditText,和一个ListView实现监听 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="f

SQL 中怎么查询数据库中具有的表、存储过程、试图数目、总触发器数、作业数

用户表:select count(*) 总表数 from sysobjects where xtype='u' 刚才那个是用户表,下面这个是系统表加用户表: select count(*) 总表数 from sysobject s where xtype in('u','s') 总视图数:select count(*) 总视图数 from sysobjects where xtype='v' 总存储过程数:select count(*) 总存储过程数 from sysobjects where

python中的MySQL数据库操作 连接 插入 查询 更新 操作

MySQL数据库 就数据库而言,连接之后就要对其操作.但是,目前那个名字叫做qiwsirtest的数据仅仅是空架子,没有什么可操作的,要操作它,就必须在里面建立“表”,什么是数据库的表呢?下面摘抄自维基百科对数据库表的简要解释,要想详细了解,需要看官在找一些有关数据库的教程和书籍来看看. 在关系数据库中,数据库表是一系列二维数组的集合,用来代表和储存数据对象之间的关系.它由纵向的列和横向的行组成,例如一个有关作者信息的名为 authors 的表中,每个列包含的是所有作者的某个特定类型的信息,比如

python中的mysql数据库like模糊查询

近期工作在使用python语言开发项目,工作中遇到了一个python连接mysql的like查询. 因为%在python中三个特殊的符号,如%s.%d分别代表了字符串占位符和数字占位符. 大家知道.mysql的模糊查询也须要用到%. 我们有一张test表,要对name字段进行模糊查询,预期的sql例如以下: select * from test where name like '%abc%'; 那么python中怎么写呢? sql = "select * from test where name

在python中配置MySQL数据库

MySQL数据库(1) 尽管用文件形式将数据保存到磁盘,已经是一种不错的方式.但是,人们还是发明了更具有格式化特点,并且写入和读取更快速便捷的东西——数据库(如果阅读港台的资料,它们称之为“资料库”).维基百科对数据库有比较详细的说明: 数据库指的是以一定方式储存在一起.能为多个用户共享.具有尽可能小的冗余度.与应用程序彼此独立的数据集合. 到目前为止,地球上有三种类型的数据: 关系型数据库:MySQL.Microsoft Access.SQL Server.Oracle.... 非关系型数据库

python中cursor操作数据库(转)

原文出处:http://doudouclever.blog.163.com/blog/static/175112310201284115340663/ python 操作数据库,要安装一个Python和数据库交互的包MySQL-python-1.2.2.win32-py2.5.exe,然后我们就可以使用MySQLdb这个包进行数据库操作了.     操作步骤如下:    1.建立数据库连接     import MySQLdb     conn=MySQLdb.connect(host="loc

PHP链接MySQL,查询数据库内容,删除数据库内容。。。记住链接公式!!!

//扩展类叫MySQLi MySQL是数据库,MySQLi是扩展 Id地址本地网络服务器的地址localhost 如果想链接别人的输入他的服务器id地址. //root代表的是数据库名, //posswd代表数据库的密码 //数据库的端口号默认都是3306 //建一个连接,造一个连接对象 $db = new MySQLi("localhost","root","123","mydb"); //判断是否出错 if(mysqli_

python中修改文件行内容

fileinput模块提供处理一个或多个文本文件的功能,可以通过使用for循环来读取一个或多个文本文件的所有行.它的工作方式和readlines很类似,不同点在于它不是将全部的行读到列表中而是创建了一个xreadlines对象.下面是fileinput模块中的常用函数:input() #返回能够用于for循环遍历的对象filename() #返回当前文件的名称lineno() #返回当前已经读取的行的数量(或者序号)filelineno() #返回当前读取的行的行号isfirstline() #

使用eval和loop在模版中直接读取数据库内容并输出

俗话说的好,自己动手丰衣足食! 今天实现了这个,拿出来同新手分享,大神请绕道! 完整贴代码: <!--{eval $slides = DB::fetch_all("SELECT * FROM `pre_common_block_item` WHERE `bid`=15 ORDER BY `displayorder` ASC,`id` DESC LIMIT 0, 10");}--> <!--{loop $slides $slide}--> <a href=&