Skip to content
This repository has been archived by the owner on Jan 13, 2022. It is now read-only.

monetdblite.insert does not take into account serials #24

Open
kutsurak opened this issue Aug 7, 2018 · 0 comments
Open

monetdblite.insert does not take into account serials #24

kutsurak opened this issue Aug 7, 2018 · 0 comments

Comments

@kutsurak
Copy link
Member

kutsurak commented Aug 7, 2018

Minimal example:

import monetdblite as mdbl

mdbl.init('/tmp/db')
mdbl.sql('CREATE TABLE foo (i serial, j int)')
mdbl.insert('foo', {'j': 12})

Output:

Traceback (most recent call last):
  File "/tmp/tst12.py", line 5, in <module>
    mdbl.insert('foo', {'j': 12})
  File "/<PATH>/virtualenvs/MonetDBLite-Python-4i82Dmc7/lib/python3.6/site-packages/monetdblite/__init__.py", line 51, in insert
    return embeddedmonetdb.insert(*args, **kwargs)
  File "/<PATH>/virtualenvs/MonetDBLite-Python-4i82Dmc7/lib/python3.6/site-packages/monetdblite/embeddedmonetdb.py", line 175, in insert
    raise __throw_exception(str(retval))
  File "/<PATH>/virtualenvs/MonetDBLite-Python-4i82Dmc7/lib/python3.6/site-packages/monetdblite/embeddedmonetdb.py", line 94, in __throw_exception
    raise exceptions.DatabaseError(str.replace('MALException:', ''))
monetdblite.exceptions.DatabaseError: could not find required key i

A work around is

mdbl.sql("INSERT INTO foo(j) VALUES (12)")

that works as expected.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant