The problem with the fact that each of them develops from its own separate copy of the database is that they will not pick up changes from other developers.
For example, if someone adds a column to a database table, other developers will not be aware of this. Someone may also add the same column inadvertently.
And if someone changes the stored procedure in such a way that requires changing the application code (for example, to add an input parameter), other developers will not recognize this. If they receive updated code from the source control, it will not work with their local copy of the database.
I agree that having an increasingly confusing development database is a problem. But I'm not sure that developing from multiple copies of the database will reduce the number of development problems.
One alternative that I acknowledge may not be available to you is to periodically copy the production database into development. As a rule, this can happen only after a new version, which makes any changes to the scheme of the production database. But for this you must have a production base.
source share