fix some bugs on Animal, database persistence can now deal with enum value if sqltype is allowed for an enum value