No, getting names right is incredibly simple. It's a single unicode `name` field, stored however your language/db stores unicode. E.g.:
name: [person's name]
No minimum lengths (other than != 0) and a reasonably large maximum length for your db (only to protect against DoS attacks). Accept all input (into properly prepared SQL statements).