un-tuple (newbie)
sdd
daniels at dsl-only.net
Mon Dec 1 16:44:57 EST 2003
Martin Doering wrote:
> I want to use Jython to fetch exactly one value from a database query,
> like here:
>
> # execute a query
> def query(db, sql):
> c = db.cursor()
> c.execute(sql)
> for line in c.fetchall():
> val = line
val, = line # one way
(val,) = line # same as above (perhaps more readable?)
val = line[0] # another way
> print val
> c.close()
> return val
Personally, I'd call it "cursor", not "c". Also my DB predeliction
leads me to prefer calling it a "row", not a "line".
If you know (and don't care to check) that a single row is returned,
with a single value, I might try something like this:
def single_value_query(db, sql):
cursor = db.cursor()
try:
cursor.execute(sql)
return cursor.fetchone()[0]
finally:
cursor.close()
More information about the Python-list
mailing list