Existing databases inheriting updates to the system model database
I want to setup user defined data types (UDT) in the system model database. When I create a new database it inherits the UDT from the model. The question is how to extend the model and have the existing databases take on the additional objects. I have setup a convention for schema names to use model as a prefix (i.e. modelCommon.databaseObject. Any suggestions
As you already know, the database ONLY inherit the model database when created. If you need to add objects later you have to create them in the existing databases. You can automize the deployment by using tools like Red-gate Script. If you need some "system wide procedures" you can create them in master and use the undocumented procedure to mark them as system object. If you need to create system wide scalar functions, you can create them in one database (like a tools database) and create aliases in the other databases (or using three part naming conventions)
I'd suggest looking into using source control to manage the database objects. You can then take advantage of tools like Microsoft Database Tools or Red Gate SQL Source Control (combined with Deployment Manager) to automate deployments to multiple databases and multiple environments as needed. Once you start automating through source control you can take advantage of continuous integration, automated deployments, incremental deployments, all sorts of stuff.