On Oct 4, 2010, at 8:16 AM, Mark Erbaugh wrote: > I have a table described with: > > BASE = declarative_base(name=APP_ID) > > class Period(BASE): > > __tablename__ = 'period' > > realperiod = Column(Integer, primary_key=True) > cycle = Column(Integer) > [more columns] > > I want to delete all records with a given value for the "cycle" column. With > the SQLAlchemy session in the variable session and the desired cycle in y, I > execute > > q = session.query(Period).filter(Period.cycle==y).delete() > > This correctly deletes the desired rows and returns the number of rows > deleted; however, if I turn echo on I see the following SQL commands: > > SELECT period.realperiod AS period_realperiod > FROM period > WHERE period.cycle = ? > > DELETE FROM period WHERE period.cycle = ? > > If I were doing this in SQL, I would to the first command as > > SELECT count(*) > FROM period > WHERE period.cycle = ? > > to get the count of rows to be deleted so I am wondering if I am doing things > correctly.
Most relational databases report the number of rows matched by any UPDATE or DELETE statement that just executed, and SQLA acquires this value via cursor.rowcount on any such statement, so a separate count() call is not required. > > Thanks, > Mark > > -- > 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.