Python实现Sqlite将字段当做索引进行查询的方法
本文实例讲述了Python实现Sqlite将字段当做索引进行查询的方法。分享给大家供大家参考,具体如下:
默认从sqlite中获取到的数据是数字索引的, 在开发阶段经常有修改数据库所以显得不太方便, 其实在python源码里就有解决方案, 直接读sqlite3的源码, 摸索了一些, 解决方案如下:
默认连接的话使用一下代码是以数字为索引的:
conn = sqlite3.connect(dbfile) cur = conn.cursor()
为了使得获取到的结果集以字段为索引, 需要添加一个函数和一个类:
def dict_factory(cursor, row): d = {} for idx, col in enumerate(cursor.description): d[col[0]] = row[idx] return d class MyCursor(sqlite3.Cursor): def __init__(self, *args, **kwargs): sqlite3.Cursor.__init__(self, *args, **kwargs) self.row_factory = dict_factory
然后修改连接的代码:
conn = sqlite3.connect(dbfile) cur = conn.cursor(factory=MyCursor)
之后读取出来的便是以字段为索引的了.
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python常见数据库操作技巧汇总》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。
相关推荐
-
python实现在sqlite动态创建表的方法
本文实例讲述了python实现在sqlite动态创建表的方法.分享给大家供大家参考.具体实现方法如下: import sqlite3 as db conn = db.connect('mytest.db') cursor = conn.cursor() cursor.execute("create table person(name text,age text,address text)") print("table created") 希望本文所述对大家的Pyth
-
Python标准库之sqlite3使用实例
Python自带一个轻量级的关系型数据库SQLite.这一数据库使用SQL语言.SQLite作为后端数据库,可以搭配Python建网站,或者制作有数据存储需求的工具.SQLite还在其它领域有广泛的应用,比如HTML5和移动端.Python标准库中的sqlite3提供该数据库的接口. 我将创建一个简单的关系型数据库,为一个书店存储书的分类和价格.数据库中包含两个表:category用于记录分类,book用于记录某个书的信息.一本书归属于某一个分类,因此book有一个外键(foreign key)
-
python操作sqlite的CRUD实例分析
本文实例讲述了python操作sqlite的CRUD实现方法.分享给大家供大家参考.具体如下: import sqlite3 as db conn = db.connect('mytest.db') cursor = conn.cursor() cursor.execute("drop table if exists datecounts") cursor.execute("create table datecounts(date text, count int)"
-
python操作数据库之sqlite3打开数据库、删除、修改示例
复制代码 代码如下: #coding=utf-8__auther__ = 'xianbao'import sqlite3# 打开数据库def opendata(): conn = sqlite3.connect("mydb.db") cur = conn.execute("""create table if not exists tianjia(id integer primary key autoincrement, user
-
Python解析excel文件存入sqlite数据库的方法
一.建立数据库 根据需求建立数据库,建立了两个表,并保证了可以将数据存储到已有的数据库中,代码如下: import sqlite3 def createDataBase(): cn = sqlite3.connect('check.db') cn.execute('''CREATE TABLE IF NOT EXISTS TB_CHECK (ID integer PRIMARY KEY AUTOINCREMENT, NUMBER INTEGER, ITEM TEXT, REFERENCE TEX
-
python从sqlite读取并显示数据的方法
本文实例讲述了python从sqlite读取并显示数据的方法.分享给大家供大家参考.具体实现方法如下: import cgi, os, sys import sqlite3 as db conn = db.connect('test.db') cursor = conn.cursor() conn.row_factory = db.Row cursor.execute("select * from person") rows = cursor.fetchall() sys.stdout
-
Python操作SQLite数据库的方法详解【导入,创建,游标,增删改查等】
本文实例讲述了Python操作SQLite数据库的方法.分享给大家供大家参考,具体如下: SQLite简介 SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中.它是D.RichardHipp建立的公有领域项目.它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了.它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl.C
-
Python实现将sqlite数据库导出转成Excel(xls)表的方法
本文实例讲述了Python实现将sqlite数据库导出转成Excel(xls)表的方法.分享给大家供大家参考,具体如下: 1. 假设已经安装带有sliqte 库的Python环境 我的是Python2.5 2. 下载 python xls 写操作包(xlwt)并安装 下载地址: http://pypi.python.org/pypi/xlwt 3. 下面就是代码(db2xls.py): import sqlite3 as sqlite from xlwt import * #MASTER_COL
-
Python实现将SQLite中的数据直接输出为CVS的方法示例
本文实例讲述了Python实现将SQLite中的数据直接输出为CVS的方法.分享给大家供大家参考,具体如下: 对于SQLite来说,目前查看还是比较麻烦,所以就像把SQLite中的数据直接转成Excel中能查看的数据,这样也好在Excel中做进一步分数据处理或分析,如前面文章中介绍的<使用Python程序抓取新浪在国内的所有IP>.从网上找到了一个将SQLite转成CVS的方法,贴在这里,供需要的朋友使用: import sqlite3 import csv, codecs, cStringI
-
Python操作sqlite3快速、安全插入数据(防注入)的实例
table通过使用下面语句创建: 复制代码 代码如下: create table userinfo(name text, email text) 更快地插入数据 在此用time.clock()来计时,看看以下三种方法的速度. 复制代码 代码如下: import sqlite3import time def create_tables(dbname): conn = sqlite3.connect(dbname) cursor = conn.cursor() cursor.e
随机推荐
- Eval and new funciton not the same thing
- vue实现一个移动端屏蔽滑动的遮罩层实例
- 通过event对象的fromElement属性解决热区设置主实体的一个bug
- 轻量级的原生js日历插件calendar.js使用指南
- PHP微信支付开发实例
- python通过ElementTree操作XML获取结点读取属性美化XML
- 一个基于flask的web应用诞生 组织结构调整(7)
- 使用存储过程实现循环插入100条记录
- js 获取、清空input type="file"的值(示例代码)
- js模式化窗口问题![window.dialogArguments]
- percona-toolkit之pt-kill 杀掉mysql查询或连接的方法
- Apache提示 the requested operation has failed无法启动的解决方法大全
- 改善你的jQuery的25个步骤 千倍级效率提升
- jquery json 实例代码
- Win98自带的卫士:注册表修改深入技巧
- 黑客攻击揭密--分析选定的网络攻击
- 做网站要主要的百度分词技术
- 解析Java线程编程中的线程安全与synchronized的使用
- List集合多个复杂字段判断去重的案例
- Java中值传递和引用传递的区别