Penso che quello che manca a tutti qui è che, sebbene non tutti abbiano a che fare con istanze di 10, 20 o 1000 dello stesso sistema software installato in tutto il paese e nel mondo ... quelli di noi che progettano software venduto commercialmente lo fanno. Di conseguenza, espandiamo i sistemi nel tempo, espandiamo le tabelle aggiungendo campi quando è necessaria una nuova capacità e quando questi campi vengono identificati appartengono a una tabella esistente e, come tale, oltre un decennio di espansione, crescita, aggiunta di campi, ecc. alle tabelle ... e poi dover lavorare con quelle tabelle dalla progettazione, al supporto, a volte scavare nei dati grezzi / risoluzione dei problemi per eseguire il debug di nuovi bug di funzionalità ... è incredibilmente irritante non avere le informazioni primarie che desideri vedere entro la prima manciata di campi,
Ho spesso desiderato di poterlo fare, proprio per questo motivo. Ma a meno di fare esattamente ciò che fa SQL, costruire uno script di creazione per una nuova tabella nel modo desiderato, scrivere l'inserto in esso, quindi eliminare tutti i vincoli, le relazioni, le chiavi, gli indici, ecc. Ecc. Esistenti dalla tabella esistente e rinominare la "nuova" tabella torna al vecchio nome, quindi legge tutte quelle chiavi, relazioni, indice, ecc. ecc ....
Non è solo noioso, richiede tempo ma ... tra altri cinque anni, dovrà accadere di nuovo ...
È così vicino a valere quell'enorme quantità di lavoro, tuttavia il punto è ... non sarà l'ultima volta che avremo bisogno di questa capacità, poiché i nostri sistemi continueranno a crescere, espandersi e ottenere campi in un ordine stravagante guidato da necessità / aggiunte di design.
La maggior parte degli sviluppatori pensa da un unico punto di vista del sistema che serve una singola azienda o un mercato di hard box molto specifico.
I designer e leader di sviluppo "off-the-shelf" ma significativamente progressisti nel loro spazio di mercato dovranno sempre affrontare questo problema, ancora e ancora ..... amerebbero una soluzione creativa se qualcuno ne ha una. Questo potrebbe facilmente far risparmiare alla mia azienda una dozzina di ore a settimana, semplicemente non dovendo scorrere o ricordare dove si trova "quel" campo nella tabella dei dati di origine ....