> but having separate tables for every optional field would be an organizational and usability nightmare
I think this indicates that declaring and managing state is too onerous in SQL.