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 [email protected].
>>> To unsubscribe from this group, send email to
>>> [email protected].
>>> 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 [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> 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 [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sqlalchemy?hl=en.