what do your SQL logs say (echo=True) ? is the view created in exactly the format you want ? There should be no guessing what SQLAlchemy is doing or why you get the wrong results.
On Feb 24, 2011, at 7:27 AM, bool wrote: > Using literal_column does not give any error, but the condition > actually does not work and produces wrong results for me. For example, > in the below program I inserted a record with value of date column 'd' > as '20110210'. And a view with a condition d > '20110310' still > outputs this record. > > Let me know if I am missing something. > > > Program: > =================================================================== > from sqlalchemy import * > from sqlalchemy.sql import * > from dateutil import parser > > conn = create_engine("sqlite:////u/my.db").connect() > > t = Table("x", MetaData(conn), Column("z", String), Column("d", > Date)) > t.create(checkfirst=True) > ins = t.insert().values(z='a', d=parser.parse('20110210')) > conn.execute(ins) > s = select([t]) > print s > result = conn.execute(s) > for row in result: > print row > > s = select([t], t.c.d > literal_column("'20110310'")) > print s > conn.execute("CREATE TEMP VIEW myview AS %s" % s.compile(conn)); > > v = Table("myview", MetaData(conn), autoload=True) > > result_view = conn.execute(select([v])) > for row in result_view: > print row > =============================================================== > Output: > ===== > > SELECT x.z, x.d > FROM x > (u'a', datetime.date(2011, 2, 10)) > > SELECT x.z, x.d > FROM x > WHERE x.d > '20110310' > (u'a', datetime.date(2011, 2, 10)) > > -- > You received this message because you are subscribed to the Google Groups > "sqlalchemy" group. > To post to this group, send email to sqlalchemy@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 sqlalchemy@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.