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 at 
http://www.sqlalchemy.org/docs/reference/ext/sqlsoup.html?highlight=sqlsoup#loading-objects.
   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...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.
> 

-- 
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.

Reply via email to