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解析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操作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
-
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读取并显示数据的方法
本文实例讲述了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操作数据库之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标准库之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操作SQLite数据库的方法详解【导入,创建,游标,增删改查等】
本文实例讲述了Python操作SQLite数据库的方法.分享给大家供大家参考,具体如下: SQLite简介 SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中.它是D.RichardHipp建立的公有领域项目.它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了.它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl.C
-
Python实现将SQLite中的数据直接输出为CVS的方法示例
本文实例讲述了Python实现将SQLite中的数据直接输出为CVS的方法.分享给大家供大家参考,具体如下: 对于SQLite来说,目前查看还是比较麻烦,所以就像把SQLite中的数据直接转成Excel中能查看的数据,这样也好在Excel中做进一步分数据处理或分析,如前面文章中介绍的<使用Python程序抓取新浪在国内的所有IP>.从网上找到了一个将SQLite转成CVS的方法,贴在这里,供需要的朋友使用: import sqlite3 import csv, codecs, cStringI
随机推荐
- python中pygame模块用法实例
- 详解vue2.0 使用动态组件实现 Tab 标签页切换效果(vue-cli)
- JS修改css样式style浅谈
- 修改TTL值的具体实现方法,防内网“窥视”
- PHP中substr函数字符串截取用法分析
- C#访问SqlServer设置链接超时的方法
- javascript简单事件处理和with用法介绍
- javascript 具名函数的四种调用方式 推荐第1/3页
- jQuery实现级联下拉框实战(5)
- 比较完整的Nginx配置文件nginx.conf常用参数中文详解
- C++实现合并排序的方法
- jquery实现tab选项卡切换效果(悬停、下方横线动画位移)
- JavaScript通过attachEvent和detachEvent方法处理带参数的函数
- 键盘操作优势 IE7快捷键集锦
- 如何确保新电脑能运行Vista
- Android getevent用法实例详解
- Android ViewPager动态加载问题
- C语言中经socket接收数据的相关函数详解
- python爬虫之自动登录与验证码识别
- 浅谈高大上的微信小程序中渲染html内容—技术分享
