When creating our databases with thousands of fields we use domains / user data types. This allows us to use a specific defined data type, like "ID Key" for all primary keys, to ensure they are all uniformly the same data type. Additionally it would allow us to change the data types of all the fields that would apply without having to go to each field manually and changing it. This is a must for us to purchase a database modeling product.

The use of domains and sets of attributes goes a long way towards minimizing the amount of effort involved in creating a model. "Enterprise Class" modeling tools I have used over the past two decades typically do this as core capability. Specific example is the inclusion of audit fields in a table structure. They tend to be the same fields/types each time and would be nice to simply include them via reference instead of having to manually add them each time. When you have hundreds of tables in your model that can become quite a burden.