save field_dict len validation.
I think the correct fix is to make the INSERT generation smarter, I've been aware of this issue for a while but it only crops up with models consisting of a single auto-incrementing primary key.  I'm not sure why anyone would have a model like that, so I haven't bothered to fix it yet.
 Hello Coleifer,

My impression is that to have a forced incremental ID is not a good idea because you can have tables without primary keys.

My patch is just a cosmetic change that guarantees that an AttributeError is raised just in the case of no fields are modified before save the entity.
 To clarify, the autoincrement id is not forced but is just the default.

I fixed the issue by making the insert statement generation a bit smarter, thanks for bringing this issue to my attention.
 Super, thanks you for your work!.

Running this code:

> > > x = ModelInstance()
> > > x.save()  

Trigger this:

```
 1719     def execute_sql(self, sql, params=None, require_commit=True):
   1720         cursor = self.get_cursor()
-> 1721         res = cursor.execute(sql, params or ())
   1722         if require_commit and self.get_autocommit():
   1723             self.commit()

OperationalError: near ")": syntax error
```
