Python sqlite3查询操作过程解析
作者:酸果实爱吐泡泡的鱼 发布时间:2023-11-23 18:37:21
标签:Python,sqlite,3,查询
这篇文章主要介绍了Python sqlite3查询操作过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
记录查询操作及获取查询结果列字段的方法
1.sqlite3 中获取所有表名及各表字段名的操作方法
SQLite 数据库中有一个特殊的表叫 sqlite_master,sqlite_master 的结构如下:
CREATE TABLE sqlite_master (
type TEXT,
name TEXT,
tbl_name TEXT,
rootpage INTEGER,
sql TEXT
);
可以通过查询这个表来获取数据库中所有表的信息
SELECT * FROM sqlite_master WHERE type='table';
查询某张表的所有字段
PRAGMA table_info(表名);
示例:
PRAGMA table_info(sqlite_sequence);
2. python 操作sqlite3,获取sql 查询结果及对应查询结果的列名的方法
class DBOperate(object):
"""
数据库操作类
"""
def __init__(self, db_file_path):
# 连接 sqlite db
# 关于commit(),如果isolation_level隔离级别默认,那么每次对数据库的操作,都需要使用该命令,
# 设置 isolation_level=None,变为自动提交模式
self._db_file_path = db_file_path
self.conn = sqlite3.connect(self._db_file_path, check_same_thread=False, isolation_level=None, timeout=1000)
# 创建游标
self.cur = self.conn.cursor()
def queryall(self, sql):
"""
查询所有的数据及对应的列名
:param sql:
:return:
"""
self.cur.execute(sql)
# TODO 获取查询结果的列名
columns_tuple = self.cur.description
# columns_tuple示例: (('TACHE_NAME', None, None, None, None, None, None), ('avgtime', None, None, None, None, None, None), ('DATE', None, None, None, None, None, None), ('ANALYSIS_TIME', None, None, None, None, None, None))
columns_list = [field_tuple[0] for field_tuple in columns_tuple]
# TODO 获取查询结果
query_result = self.cur.fetchall()
self.cur.close()
return query_result, columns_list
def close(self):
"""
关闭数据库连接
:return:
"""
if self.cur is not None:
self.cur.close()
if self.conn is not None:
self.conn.close()
来源:https://www.cnblogs.com/gaozhidao/p/12334542.html
0
投稿
猜你喜欢
- 1 非贪婪flag>>> re.findall(r"a(\d+?)", "a23b"
- 从今天起,我将陆续将 ppk on JavaScript 的读书心得发布到这个blog上。ppk是我所景仰的一位web开发者,原因无它,只是
- 如下所示: col = [] img = "test1" img1 = "test2" col.ap
- 视频观看视频Pygame模块之pygame.draw本文将主要介绍Pygame的draw模块,主要内容翻译自pygame的官方文档pygam
- 摘要:Ffrpc可以很方便的构建c++ server, 在网游服务器程序开发中,进程间通讯非常的重要,比如gateserver和gamese
- 本文实例讲述了python实现将元祖转换成数组的方法。分享给大家供大家参考。具体分析如下:python的元祖使用一对小括号表示的,元素是固定
- 简述在大多数此类教程中都会不遗余力的介绍如何使用数据库。今天我们对数据库暂且不表,而是来关注另一个在web应用中很重要的特性:如
- JS操作二进制很麻烦,而且一直没有一个好的无损压缩工具来实现纯文本的压缩。所以钻研了一段时间的gzip,后来发现还是仅用 LZ77 比较容易
- 1.获取页面titletitle:获取当前页面的标题显示的字段from selenium import webdriverimport ti
- 首先下载selenium模块,pip install selenium,下载一个浏览器驱动程序(我这里使用谷歌)。#导入#注意python各
- 什么是拼音转换在我们学习语言之前,我们一般会学习拼音来认识汉字,并学会如何读汉字。所以,拼音在对于我们语言的重要性不言而喻。而拼音转换指的是
- Python中内置了一些与时间处理相关的库,如time、datatime和calendar库。其中time库是Python中处理时间的标准库
- 要将深度学习更快且更便捷地应用于新的问题中,选择一款深度学习工具是必不可少的步骤。 TensorFlow是谷歌于2015年11月9日正式开源
- 目录1、梳理一下Git、github和gitee这三个之间的关系:1.1、Github1.2、Gitee 1.3、Git2、如何安
- 尽管Python事实上并不是一门纯函数式编程语言,但它本身是一门多范型语言,并给了你足够的自由利用函数式编程的便利。函数式风格有着各种理论与
- 这篇文章主要介绍了Python实现自定义读写分离代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的
- 本文实例为大家分享了Python九宫格图片生成的具体代码,供大家参考,具体内容如下利用Image类将一张图片分割成9张,发朋友圈利器,打包成
- Python IDLE Subprocess Connection Error的解决方法今天准备运行一个Python 文件时,IDLE突然报
- PHP从主流来看,是一门面向过程的语言,它的最大缺点就是无法实现多线程管理,其程序的执行都是从头到尾,按照逻辑一路执行下来,不可能出现分支,
- 本文实例讲述了CentOS 6/7环境下通过yum安装php7的方法。分享给大家供大家参考,具体如下:安装php7已经是现在linux服务器