Dovresti utilizzare una procedura memorizzata che genererebbe SQL in modo dinamico e quindi eseguirlo. I nomi delle colonne non sono dati di prima classe in SQL, quindi non puoi farci molto. Vengono determinati al momento dell'analisi della query, prima dell'esecuzione della query o del recupero dei dati.
Suggerisco invece di farlo nella tua app. Basta che la tua app visualizzi/salvi/qualunque sia il nome corretto invece dei nomi delle colonne del database.
PS:stai abusando in modo orribile del modello relazionale. Si prega di considerare molto attentamente se si davvero voglio quello schema. Il tuo schema non supera la prima forma normale. E cos'è worksheet_type_lookup
per? Non worksheets
dirti che tipo?