Ho visto questo fatto in un paio di posti diversi. È fantastico in teoria, ma raramente l'ho visto efficace. Ecco perché. In primo luogo, se hai una squadra di amministratori di database (o altre persone), ho generalmente riscontrato che la persona meno competente o meno gradita del gruppo ottiene il peso del lavoro di revisione. Perché tu dici? È perché, nessun altro vuole farlo, e tutti gli altri sono impegnati a fare altre cose che sono probabilmente più urgenti. Hai mai visto un DBA sedersi e dire "l'uomo è tutto perfetto, posso semplicemente sedermi e navigare in rete. Vorrei avere qualcosa da fare". Nemmeno io, almeno non quelli buoni. Sono occupati o più occupati di tutti gli altri. Ciò significa che la persona che è meno capace è molto probabilmente facendo la revisione, e questa è esattamente la persona che non vuoi farlo. Il codice che vuoi rivedere è il codice veramente difficile che la gente guarda e lo trasmette come una sorta di magia nera. I DBA Junior o semplicemente cattivi, non saranno mai in grado di cogliere le sottigliezze di come funziona una query davvero difficile. Raramente, come mai, qualcuno ha mai detto "Uomo non ho pensato di selezionare una singola riga da un tavolo usando la chiave primaria! Grazie DBA sei un vero toccasana". In questo scenario, in realtà, tutto ciò che stai facendo è creare molto lavoro con scarso valore.
In secondo luogo, è semplicemente più lavoro per il gruppo DB. Ciò che probabilmente accadrà anche se guardano ad altre cose è che daranno una rapida occhiata a questo aspetto e qualcosa verrà perso. Sono persone impegnate e la revisione del codice richiede molto tempo. In realtà non è giusto che vengano incaricati di questo, perché è una scusa per tutti gli altri essere pigri e usarli come un fuori, che in definitiva è ciò che accade. Qualcosa si interrompe nella produzione e lo sviluppatore fa notare rapidamente "Beh, il DBA lo ha revisionato". Ora è vero tutto il tempo, no, ma è vero parte del tempo e spesso da persone che hanno bisogno di avere il loro codice veramente rivisto. Quindi hai sotterrato il DBA con un lavoro extra e hai costretto quella persona a essere responsabile degli errori di qualcun altro, quando quella persona probabilmente non ha abbastanza tempo per correggere tutti gli errori attualmente in produzione.
L'unico modo per risolvere veramente il problema è quello di far scrivere alle persone che sanno come scrivere codice SQL. Dovrebbero ricevere informazioni dai DBA di volta in volta? Certo che dovrebbero, ma ho sempre trovato, se non hai il tempo di farlo bene la prima volta, quando hai intenzione di trovare il tempo per sistemarlo.