Creating/Altering Database Schemas via Code



I have a conumdrum. Where I am employed, the decision has been made,
against my protests, to create/alter the database for a suite of
applications in the VB code! (VS 2005/SQL Server 2005)
That is,
1) when the "main" application starts it checks if the DB exists (on
the server in an INI file)
2)If it does not exist, it creates it, not using SQL Scripts, but by
running the methods explained in step 3
3)Each table that is needed is associated with a VB class. Everytime an
instance of that class is created it checks to see if the table exists,
if not it creates it.
4) Tables are "versioned". The "version" of each table is hardcoded in
the VB code, and stored in a table in the DB.
5)Thus the same Major.Minor release of an application can be using
different table "versions"
6) If "versions" in the DB and the App do not match, then "ALTER Table"
sql statements are supposedly created automagically and can then be run
by an "administrator" -- Please note that an "administrator" is not
necessarily a programmer or DBA, it can Customer BettySue who has admin
privaleges for the application.

Is it just me or is this crazy?
I have never heard of major applications (a suite of at least 9 client
server and windows services -- used in the Public Safety Sector of all
things) managing their databases in this way. If this is common
practice, please let me know.

Any suggestions/links/horror stories I can use to help stop this
madness?

If this is the wrong place to post this, i apologize. Let me know where
to post.

Thanks,
Bill

.



Relevant Pages

  • Limiting applications database size
    ... I have a database server that contains several applications. ... to facilitate one-on-one interaction with one of our expert instructors. ...
    (Security-Basics)
  • Re: System Architecture / .NET Remoting
    ... application server" Also, I was trying to determine if the best way ... have no problem sharing your SOA amongst many applications. ... layer. ... ignorant of anything to do with database connections and the like. ...
    (microsoft.public.dotnet.languages.csharp)
  • Add / Remove Program Problem
    ... to install a suite of applications written for my site. ... group of VB6 applications, is installed on a Windows 2003 Terminal Server. ... They were previously running on a Windows 2000 Terminal Server ...
    (microsoft.public.vb.general.discussion)
  • Re: Data source options
    ... This is pretty much how FlashConnect was designed to operate. ... FlashConnect executable, referenced in the URL, resides on the web server ... > browser-based database application where the backing database is not ... > If you look at various rich internet applications, ...
    (comp.databases.pick)
  • Re: Looking for generic measurement api / industry leader
    ... Bandrowsky) wrote: ... >server and application suite. ... >I obviously need to implement a database import utility or screen, ...
    (comp.arch.embedded)