Just to explain to everyone why these commands are harder than they appear at 
first, consider ALTER TABLE DROP COLUMN .

The problem is not in "deleting" the column of data .  All you have to do for 
that is to rename the column something that can't be typed, and remove any 
constraints built into the column definition.  It's easy.  If the programmer 
wants to save the space the data takes up they can do a VACUUM.

But before you do this, you need to make sure that dropping that column isn't 
going to mess anything up.  To do that you have to look for anything in the 
schema that uses that column name.  It might be part of a constraint on that 
table.   It might be part of a trigger or foreign key on any table.  In most 
DBMSes, this isn't too difficult.  Database schema are held in a structured 
manner.  The column concerned will have an ID number, and all you do is search 
for that ID.  But in SQLite, the schema is held only in text.  So you have to 
parse the schema, with all its blanking and comments, looking for that column.  
And handling all the places it might occur and ways it might be phrased is 
difficult.

Simon.
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to