Hi, I'm trying to follow the "declarative" example in the tutorial with 0.5.0b2, and it's failing to work:
from sqlalchemy import create_engine engine = create_engine('sqlite:///:memory:', echo=True) from sqlalchemy import Table, Column, Integer, String, MetaData, ForeignKey from sqlalchemy.ext.declarative import declarative_base Base = declarative_base() class User(Base): __tablename__ = 'users' id = Column(Integer, primary_key=True) name = Column(String) fullname = Column(String) password = Column(String) def __init__(self, name, fullname, password): self.name = name self.fullname = fullname self.password = password def __repr__(self): return "<User('%s','%s', '%s')>" % (self.name, self.fullname, self.password) from sqlalchemy.orm import sessionmaker Session = sessionmaker(bind=engine) session = Session() ed_user = User('ed', 'Ed Jones', 'edspassword') session.add(ed_user) session.add_all([ User('wendy', 'Wendy Williams', 'foobar'), User('mary', 'Mary Contrary', 'xxg527'), User('fred', 'Fred Flinstone', 'blah')]) session.commit() --- Produces: pointyhat# python sqltest.py 2008-07-17 20:15:37,118 INFO sqlalchemy.engine.base.Engine.0x..e0 BEGIN 2008-07-17 20:15:37,121 INFO sqlalchemy.engine.base.Engine.0x..e0 INSERT INTO users (name, fullname, password) VALUES (?, ?, ?) 2008-07-17 20:15:37,121 INFO sqlalchemy.engine.base.Engine.0x..e0 ['ed', 'Ed Jones', 'edspassword'] 2008-07-17 20:15:37,122 INFO sqlalchemy.engine.base.Engine.0x..e0 ROLLBACK Traceback (most recent call last): File "sqltest.py", line 37, in <module> session.commit() File "/usr/local/lib/python2.5/site-packages/SQLAlchemy-0.5.0beta2-py2.5.egg/sqlalchemy/orm/session.py", line 649, in commit self.transaction.commit() File "/usr/local/lib/python2.5/site-packages/SQLAlchemy-0.5.0beta2-py2.5.egg/sqlalchemy/orm/session.py", line 366, in commit self._prepare_impl() File "/usr/local/lib/python2.5/site-packages/SQLAlchemy-0.5.0beta2-py2.5.egg/sqlalchemy/orm/session.py", line 350, in _prepare_impl self.session.flush() File "/usr/local/lib/python2.5/site-packages/SQLAlchemy-0.5.0beta2-py2.5.egg/sqlalchemy/orm/session.py", line 1394, in flush flush_context.execute() File "/usr/local/lib/python2.5/site-packages/SQLAlchemy-0.5.0beta2-py2.5.egg/sqlalchemy/orm/unitofwork.py", line 268, in execute UOWExecutor().execute(self, tasks) File "/usr/local/lib/python2.5/site-packages/SQLAlchemy-0.5.0beta2-py2.5.egg/sqlalchemy/orm/unitofwork.py", line 754, in execute self.execute_save_steps(trans, task) File "/usr/local/lib/python2.5/site-packages/SQLAlchemy-0.5.0beta2-py2.5.egg/sqlalchemy/orm/unitofwork.py", line 769, in execute_save_steps self.save_objects(trans, task) File "/usr/local/lib/python2.5/site-packages/SQLAlchemy-0.5.0beta2-py2.5.egg/sqlalchemy/orm/unitofwork.py", line 760, in save_objects task.mapper._save_obj(task.polymorphic_tosave_objects, trans) File "/usr/local/lib/python2.5/site-packages/SQLAlchemy-0.5.0beta2-py2.5.egg/sqlalchemy/orm/mapper.py", line 1163, in _save_obj c = connection.execute(statement.values(value_params), params) File "/usr/local/lib/python2.5/site-packages/SQLAlchemy-0.5.0beta2-py2.5.egg/sqlalchemy/engine/base.py", line 847, in execute return Connection.executors[c](self, object, multiparams, params) File "/usr/local/lib/python2.5/site-packages/SQLAlchemy-0.5.0beta2-py2.5.egg/sqlalchemy/engine/base.py", line 898, in execute_clauseelement return self._execute_compiled(elem.compile(dialect=self.dialect, column_keys=keys, inline=len(params) > 1), distilled_params=params) File "/usr/local/lib/python2.5/site-packages/SQLAlchemy-0.5.0beta2-py2.5.egg/sqlalchemy/engine/base.py", line 910, in _execute_compiled self.__execute_raw(context) File "/usr/local/lib/python2.5/site-packages/SQLAlchemy-0.5.0beta2-py2.5.egg/sqlalchemy/engine/base.py", line 919, in __execute_raw self._cursor_execute(context.cursor, context.statement, context.parameters[0], context=context) File "/usr/local/lib/python2.5/site-packages/SQLAlchemy-0.5.0beta2-py2.5.egg/sqlalchemy/engine/base.py", line 963, in _cursor_execute self._handle_dbapi_exception(e, statement, parameters, cursor) File "/usr/local/lib/python2.5/site-packages/SQLAlchemy-0.5.0beta2-py2.5.egg/sqlalchemy/engine/base.py", line 945, in _handle_dbapi_exception raise exc.DBAPIError.instance(statement, parameters, e, connection_invalidated=is_disconnect) sqlalchemy.exc.OperationalError: (OperationalError) no such table: users u'INSERT INTO users (name, fullname, password) VALUES (?, ?, ?)' ['ed', 'Ed Jones', 'edspassword'] i.e. it's failing to create the table before trying to insert into it. What is wrong? Kris --~--~---------~--~----~------------~-------~--~----~ 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 [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en -~----------~----~----~----~------~----~------~--~---