[New-bugs-announce] [issue21465] sqlite3 Row can return duplicate keys when using adapters
Mark Lawrence
report at bugs.python.org
Fri May 9 23:50:56 CEST 2014
New submission from Mark Lawrence:
Code adopted from here https://docs.python.org/3/library/sqlite3.html#default-adapters-and-converters.
import sqlite3
import datetime
con = sqlite3.connect(":memory:", detect_types=sqlite3.PARSE_DECLTYPES|sqlite3.PARSE_COLNAMES)
con.row_factory = sqlite3.Row
cur = con.cursor()
cur.execute("create table test(d date, ts timestamp)")
today = datetime.date.today()
now = datetime.datetime.now()
cur.execute("insert into test(d, ts) values (?, ?)", (today, now))
cur.execute('select current_date as "d [date]", current_timestamp as "ts [timestamp]"')
row = cur.fetchone()
print(row.keys())
cur.execute('select current_date as "nit [date]", current_timestamp as "nit [timestamp]"')
row = cur.fetchone()
print(row.keys())
cur.execute('select current_date as " [date]", current_timestamp as " [timestamp]"')
row = cur.fetchone()
print(row.keys())
Output ---
c:\Users\Mark\MyPython>sqlite3_error.py
['d', 'ts']
['nit', 'nit']
['', '']
This clearly defeats the purpose of using keys to access the given columns. Hardly a show stopper but I thought I'd flag it up.
----------
components: Library (Lib)
messages: 218200
nosy: BreamoreBoy
priority: normal
severity: normal
status: open
title: sqlite3 Row can return duplicate keys when using adapters
type: behavior
versions: Python 2.7, Python 3.4, Python 3.5
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue21465>
_______________________________________
More information about the New-bugs-announce
mailing list