from sqlalchemy import *
import datetime
sqlite_engine = create_engine('sqlite://filename=:memory:', echo=True)
a = Table('a', sqlite_engine,
Column('id', Integer, primary_key = True)
)
a.create()
class A(object):
def __init__(self, id=None):
self.id = id
A.mapper = mapper(A, a)
a = A()
objectstore.commit()
I got a Exception:
CREATE TABLE a(
id INTEGER NOT NULL PRIMARY KEY
)
{}
INSERT INTO a () VALUES ()
[]
Traceback (most recent call last):
File "D:\test\sqlalchemy\t6.py", line 18, in ?
objectstore.commit()
File
"c:\python24\lib\site-packages\SQLAlchemy-0.91alpha-py2.4.egg\sqlalchemy\mapping\objectstore.py",
line 76, in commit
uow().commit(*obj)
File
"c:\python24\lib\site-packages\SQLAlchemy-0.91alpha-py2.4.egg\sqlalchemy\mapping\objectstore.py",
line 256, in commit
commit_context.execute()
File
"c:\python24\lib\site-packages\SQLAlchemy-0.91alpha-py2.4.egg\sqlalchemy\mapping\objectstore.py",
line 365, in execute
head.execute(self)
File
"c:\python24\lib\site-packages\SQLAlchemy-0.91alpha-py2.4.egg\sqlalchemy\mapping\objectstore.py",
line 514, in execute
self.mapper.save_obj(self.tosave_objects(), trans)
File
"c:\python24\lib\site-packages\SQLAlchemy-0.91alpha-py2.4.egg\sqlalchemy\mapping\mapper.py",
line 481, in save_obj
statement.execute(**params)
File
"c:\python24\lib\site-packages\SQLAlchemy-0.91alpha-py2.4.egg\sqlalchemy\sql.py",
line 379, in execute
return c.execute(*multiparams, **params)
File
"c:\python24\lib\site-packages\SQLAlchemy-0.91alpha-py2.4.egg\sqlalchemy\sql.py",
line 277, in execute
return self.engine.execute_compiled(self, params)
File
"c:\python24\lib\site-packages\SQLAlchemy-0.91alpha-py2.4.egg\sqlalchemy\engine.py",
line 380, in execute_compiled
proxy(str(compiled), parameters)
File
"c:\python24\lib\site-packages\SQLAlchemy-0.91alpha-py2.4.egg\sqlalchemy\engine.py",
line 375, in proxy
self.execute(statement, parameters, connection=connection,
cursor=cursor)
File
"c:\python24\lib\site-packages\SQLAlchemy-0.91alpha-py2.4.egg\sqlalchemy\engine.py",
line 428, in execute
self._execute(cursor, statement, parameters)
File
"c:\python24\lib\site-packages\SQLAlchemy-0.91alpha-py2.4.egg\sqlalchemy\engine.py",
line 437, in _execute
c.execute(statement, parameters)
pysqlite2.dbapi2.OperationalError: near ")": syntax error
Because id is primary_key, so at first I only created a dummy class just like:
class A(object):pass
But it raises the same exception. You can see the INSERT statment is
not correct. And
a.insert().execute(id=1)
can do the work? I don't know if it's a bug. I use above codes just
for some testing work.
--
I like python!
My Blog: http://www.donews.net/limodou
NewEdit Maillist: http://groups.google.com/group/NewEdit
-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems? Stop! Download the new AJAX search engine that makes
searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_idv37&alloc_id865&op=click
_______________________________________________
Sqlalchemy-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sqlalchemy-users