See this post:
When using fromDatabase = True with idName:
fromDatabase = True
table = 'SystemsInfo'
idType = str
idName = 'SystemName'
lazyUpdate = True
.. an attempt to insert a new row with all other columns but the index (SystemName) defined results in a duplicate column error:
item = SystemsInfo(id='uniquename')
SystemName is used both as the id column and is in place in the normal column listing.