Thread: [SQLObject] Multiple access to database?
SQLObject is a Python ORM.
Brought to you by:
ianbicking,
phd
From: Basil S. <ba...@ya...> - 2006-11-12 09:46:08
|
Hi friends! Currently I have developing a medium size GUI application that use SQLObject for working with database. There is ability to add/edit/delete data in application. There is one small issue I don't how to resolve. When one of user access some data for editing, than should be seted some kind of lock that prevent other user to edit the same data in a same time. How I can make so? BTW database backend is MySQL. Thanks! -- Basil Shubin Freelance Software Developer |
From: Oleg B. <ph...@ph...> - 2006-11-12 10:42:07
|
On Sun, Nov 12, 2006 at 03:39:36PM +0600, Basil Shubin wrote: > Currently I have developing a medium size GUI application that use > SQLObject for working with database. There is ability to add/edit/delete > data in application. There is one small issue I don't how to resolve. > When one of user access some data for editing, than should be seted some > kind of lock that prevent other user to edit the same data in a same > time. How I can make so? BTW database backend is MySQL. SELECT FOR UPDATE is supprted by SQLObject 0.8 (from the trunk). Not sure if if MySQL implements it. Oleg. -- Oleg Broytmann http://phd.pp.ru/ ph...@ph... Programmers don't die, they just GOSUB without RETURN. |
From: Basil S. <ba...@ya...> - 2006-11-12 11:07:36
|
Oleg Broytmann =D0=C9=DB=C5=D4: > On Sun, Nov 12, 2006 at 03:39:36PM +0600, Basil Shubin wrote: >> Currently I have developing a medium size GUI application that use=20 >> SQLObject for working with database. There is ability to add/edit/dele= te=20 >> data in application. There is one small issue I don't how to resolve.=20 >> When one of user access some data for editing, than should be seted so= me=20 >> kind of lock that prevent other user to edit the same data in a same=20 >> time. How I can make so? BTW database backend is MySQL. >=20 > SELECT FOR UPDATE is supprted by SQLObject 0.8 (from the trunk). Not > sure if if MySQL implements it. Excuse me, but how I can use it? Give me a clue about how to use it with=20 SQLObject. --=20 Basil Shubin Freelance Software Developer |
From: Oleg B. <ph...@ph...> - 2006-11-12 11:14:58
|
On Sun, Nov 12, 2006 at 05:02:18PM +0600, Basil Shubin wrote: > > SELECT FOR UPDATE is supprted by SQLObject 0.8 (from the trunk). Not > > sure if if MySQL implements it. > > Excuse me, but how I can use it? Give me a clue about how to use it with > SQLObject. MyTable.select(MyTable.q.name==value, forUpdate=True) Postgres docs abut it at http://www.postgresql.org/docs/7.4/static/sql-select.html "FOR UPDATE causes the rows retrieved by the SELECT statement to be locked as though for update. This prevents them from being modified or deleted by other transactions until the current transaction ends. That is, other transactions that attempt UPDATE, DELETE, or SELECT FOR UPDATE of these rows will be blocked until the current transaction ends. Also, if an UPDATE, DELETE, or SELECT FOR UPDATE from another transaction has already locked a selected row or rows, SELECT FOR UPDATE will wait for the other transaction to complete, and will then lock and return the updated row (or no row, if the row was deleted)." Oleg. -- Oleg Broytmann http://phd.pp.ru/ ph...@ph... Programmers don't die, they just GOSUB without RETURN. |
From: Jorge G. <jg...@gm...> - 2006-11-12 12:54:26
|
Basil Shubin <ba...@ya...> writes: > Hi friends! > > Currently I have developing a medium size GUI application that use > SQLObject for working with database. There is ability to add/edit/delete > data in application. There is one small issue I don't how to resolve. > When one of user access some data for editing, than should be seted some > kind of lock that prevent other user to edit the same data in a same > time. How I can make so? BTW database backend is MySQL. Kind of a SELECT FOR UPDATE in PostgreSQL? From Google I got to http://dev.mysql.com/doc/refman/5.0/en/internal-locking.html You should be able to use sqlbuilder to issue those commands. Be seeing you, -- Jorge Godoy <jg...@gm...> |