Add this line as a test:
db.executesql('create unique index idx_owner on bodypart(owner)')
to your code like this:
db = DAL('sqlite://storage.db')
person = db.define_table('person', Field('name'))
bodypart = db.define_table('bodypart', Field('name'), Field('owner', 'reference
person', unique=True))
db.executesql('create unique index idx_owner on bodypart(owner)')
pid = person.insert(name='Sid')
bpid = bodypart.insert(name='arms', owner= pid)
bodypart(bpid).owner
bpid = bodypart.insert(name='mouth', owner= pid)
bodypart(bpid).owner
--