Thank you so much. That worked. I was staring at the SQLsoup doc you linked to for hours trying to understand but could not figure what the "_" meant. In any case your explanation is clear and very useful. Thanks again.
On Jun 20, 5:18 pm, Michael Bayer <mike...@zzzcomputing.com> wrote: > On Jun 20, 2010, at 5:53 PM, Aref wrote: > > > > >>>>> db = SqlSoup('sqlite:///c:\\tutorial.db3') > >>>>> db_dynamic = 'tf_user' > >>>>> DB = db.entity(db_dynamic) > >>>>> print DB > >>>>> ColHeader = DB.c.keys() > >>>>> conn = db.connection() > >>>>> #modify a field > >>>>> DB.password = 'hello' > >>>>> db.flush() > > It appears you're using a method called entity(), which would return a handle > to the current table called "tf_user" in this case. To modify a row, you > need to load the row first. You do this with filter(), first(), one(), > etc. It seems here you're tacking on the word "hello" to the query object > itself which would have no effect. Examples of loading actual rows > athttp://www.sqlalchemy.org/docs/reference/ext/sqlsoup.html?highlight=s.... > The tutorial here seems to use the special variable "_", which is unfortunate > (I didn't write any of this), but it implies the row that was previously > loaded via one(). thats the thing you change. > > > > > > >>>>> #get the table data > >>>>> data = select([db.tf_user],) > >>>>> listdata=[] > >>>>> for row in conn.execute(data): > >>>>> row = ["%s" % el for el in row] > >>>>> listdata.append(row) > >>>>> print listdata > > >>>>> which is supposed to modify the value of the password field in a > >>>>> database to 'hello'. However, when I examine the database nothing has > >>>>> changed, the old value is still there. What am I doing wrong? What is > >>>>> the best way to update or modify fields? I can't seem to find anything > >>>>> substantial regarding SQLSoup. > > >>>> you need to commit() the transaction. The current 0.6 docs describe > >>>> this:http://www.sqlalchemy.org/docs/reference/ext/sqlsoup.html?highlight=s...quoted > >>>> text - > > >>>> - Show quoted text - > > >>> -- > >>> You received this message because you are subscribed to the Google Groups > >>> "sqlalchemy" group. > >>> To post to this group, send email to sqlalch...@googlegroups.com. > >>> To unsubscribe from this group, send email to > >>> sqlalchemy+unsubscr...@googlegroups.com. > >>> For more options, visit this group > >>> athttp://groups.google.com/group/sqlalchemy?hl=en.-Hide quoted text - > > >> - Show quoted text - > > > -- > > You received this message because you are subscribed to the Google Groups > > "sqlalchemy" group. > > To post to this group, send email to sqlalch...@googlegroups.com. > > To unsubscribe from this group, send email to > > sqlalchemy+unsubscr...@googlegroups.com. > > For more options, visit this group > > athttp://groups.google.com/group/sqlalchemy?hl=en.- Hide quoted text - > > - Show quoted text - -- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to sqlalch...@googlegroups.com. To unsubscribe from this group, send email to sqlalchemy+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en.