in the 0.7 series, you can't pass an ORM mapped class as the subject of the 
core update() construct:

                e = 
update(Executions).where(Executions.id==bindparam("execution_id")). \
                        values(end_date=bindparam("now"))

that statement will work as is if you just refer to the Table:

                e = 
update(Executions.__table__).where(Executions.id==bindparam("execution_id")). \
                        values(end_date=bindparam("now"))

also note that the indirection between bindparam("foo") and 
connection.execute(stmt, foo="some value") is not needed; you can embed literal 
values directly in the statement, and the Core will convert them to bound 
parameters (just use echo=True to see it in action):

                e = update(Executions).where(Executions.id==execution_id). \
                        values(end_date=datetime.datetime.now())

At the ORM level,  you can use query.update():

        
session.query(Executions).filter(Executions.id==execution_id).update({"end_date":datetime.now()},
 synchronize_session=False)


On Mar 6, 2013, at 8:06 PM, Mauricio de Abreu Antunes 
<mauricio.abr...@gmail.com> wrote:

> So, i have read @StackOverflow some tips.
> There is a lot of people saying they have to make a query on the table and 
> then update it. there is no way to upgrade without performing a query?!
> 
> On Wednesday, March 6, 2013 6:17:35 PM UTC-3, Mauricio de Abreu Antunes wrote:
> Hello,
> 
> I'm new to SQLAlchemy. Currently I'm using SQLAlchemy 0.7.1.
> Reading the tutorial, I tried to write my codes like those examples but I had 
> no success working on it.
> 
> Code is here:
> https://gist.github.com/mauricioabreu/5103163
> 
> Do I need to map the table Executions to execute an update expression on it?
> 
> Sorry if this is a very noob question.
> 
> If you need more info about the problem let me know.
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "sqlalchemy" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to sqlalchemy+unsubscr...@googlegroups.com.
> To post to this group, send email to sqlalchemy@googlegroups.com.
> Visit this group at http://groups.google.com/group/sqlalchemy?hl=en.
> For more options, visit https://groups.google.com/groups/opt_out.
>  
>  

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sqlalchemy+unsubscr...@googlegroups.com.
To post to this group, send email to sqlalchemy@googlegroups.com.
Visit this group at http://groups.google.com/group/sqlalchemy?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to