• [font="Verdana"]Oracle has fairly comprehensive support for shared schemas. These are implemented (last time I looked at Oracle) as "application users" where the user has rights to own objects, but no rights to log in. You then grant rights to that user's objects to all of the other people who need to use it.

    You can, of course, create multiple Oracle instances. There used to be a great deal of overhead in doing this, but with modern versions of Oracle that's far lower. The only real overhead is in the amount of system database area per instance.

    I'd recommend that you try the shared schema approach first. You can emulate the dynamic creating/dropping databases by creating/dropping application users.

    I have a client who has multiple concurrent versions of the same application within the same Oracle database, and they are maintained under different schemas ("application users"). The application knows to prefix all object names with the appropriate schema name. It works pretty well.

    Interestingly, there's nothing stopping you from doing the same in SQL Server now. And in fact, as SQL Server supports multiple and default schemas, it would be somewhat easier. However, it's not an approach I would recommend.

    [/font]