python sqlite中通过字段名获取查询结果

在连sqlite数据库时,用fetchall()查询结果,是用row[0],row[1]这样的方式来打印每列的结果

但是我想用row[“字段名”]方式查询怎么办?

import sqlite3

con = sqlite3.connect("mydb")
con.row_factory = sqlite3.Row

cur = con.cursor()
cur.execute("select name_last, age from people")
for row in cur:
    assert row[0] == row["name_last"]
    assert row["name_last"] == row["nAmE_lAsT"]
    assert row[1] == row["age"]
    assert row[1] == row["AgE"]
#何问起 hovertree.com

MySQLdb的实现方法是: 
conn=MySQLdb.connect(..., cursorclass=MySQLdb.cursors.DictCursor) 
或者用MySQLdb.cursors.SSDictCursor。前者数据存储在客户端,后者数据存储在服务器。

推荐:http://www.cnblogs.com/roucheng/p/pythonstring.html

时间: 2024-10-29 10:45:48

python sqlite中通过字段名获取查询结果的相关文章

java中通过包名获取该包下的所有class

前面做的在mybatis通过注解自动创建更新表结构的项目,其中在spring加载完毕之后需要去获取所有实体类的class,用来获取实体类属性上的注解,进而分析表结构达到创建修改表结构的目的. 所以就需要一个功能,通过包名获取该包下的所有class,那么直接贴代码: package com.sunchenbin.store.utils; import java.io.File; import java.io.FileFilter; import java.io.IOException; impor

Python类中的字段,方法,属性区别及StaticMethod, Property

类包含下列 静态属性 动态属性 静态方法 动态方法 class Province: #静态字段--属于类,调用方法类.字段名 memo = "中国23个省之一" #动态字段--属于对象,调用方式实例化对象.字段名 def __init__(self, name, capital, leader): self.Name = name self.Capital = capital self.Leader = leader #动态方法--属于对象 def sports_game(self):

DataTable中的字段名

一直苦于DataTable弱类型,在VS中无法得到字段名的智能提示. 今天想出了一个手动注释的办法. 感觉这算是个办法. 原文地址:https://www.cnblogs.com/fabao/p/10416664.html

快速更改对象中的字段名

问题描述: 有这样一个对象 let params = { id: 123, name: 'WiseWrong', e_mail: '[email protected]', tell: '12345678', } 由于种种原因,需要将其中的字段名  e_mail 修改为 eMail 分析原因: 处理的方案有很多,比如用 for-in 语句遍历,或者 delete 之后再新增字段,但这两种方案都有问题 首先 for-in 遍历效率太低,直接忽略.使用 delete 处理基础类型很有效,但字段的顺序会

在oracle中查询已知表名的表中所有字段名,每个字段是否是主键,是否是外键,是否为空的sql语句

查询表的所有列及其属性:select t.*,c.COMMENTS from user_tab_columns t,user_col_comments c where t.table_name = c.table_name and t.column_name = c.column_name and t.table_name = women;查找表的主键:select cu.* from user_cons_columns cu, user_constraints au where cu.cons

PB中通过对象名获取对象并获取对象下的子对象

想实现这么个功能,发现pb自带的例子中有这么一段 lcd_Object = FindClassDefinition(String(ltvi_Item.Data), is_LibraryList) If IsNull(lcd_Object) Then MessageBox("Error","Object Not Found.") Return End If ll_Rows = UpperBound(lcd_Object.nestedclasslist)

SQLite中Integer字段才支持自动增加,设置为主键可自增

CREATE TABLE gym_chatuser( id  Integer NOT NULL,       uid     text , name      text , img      text , account      text , pinyin         text , loginId       text, CONSTRAINT PK_userList PRIMARY KEY (id) );

用dataset做数据源时,让gridview显示的列名与数据库表中的字段名不同

原文发布时间为:2008-10-27 -- 来源于本人的百度文章 [由搬家工具导入] 确定GridView的AutoGenerateColumns设置为False;使用GridView的“编辑列”,添加一个绑定字段:“BoundField”,在该绑定字段的BindField的属性中的数据中的DataField中添加你要绑定的数据库中表的列的名称,然后用你的代码没问题了,或者是在“外观”中的“HeadText”中输入要显示的名称也可以实现

jongo_对表中时间字段进行范围查询

DB db = DbManager.getInstance().getDataDb(); Jongo jongo = new Jongo(db); MongoCollection sysLogs = jongo.getCollection("sys_logs"); Map<String, Object> map = new HashMap<>(); Criteria criteria = new Criteria(); try { SimpleDateForma