L'ho visto fatto in un paio di posti diversi. È fantastico in teoria, ma raramente ho visto che è efficace. Ecco perché. In primo luogo, se hai un team di amministratori di database (o altre persone), in genere ho scoperto che la persona meno competente o meno apprezzata del gruppo ottiene il peso maggiore 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. Mai visto un DBA sedersi in giro e dire: "Amico, tutto funziona alla perfezione; posso semplicemente sedermi e navigare in rete. Vorrei avere qualcosa da fare." Neanche a me, almeno non quelli buoni. Sono occupati o più occupati di tutti gli altri. Ciò significa che la persona che è meno in grado è molto probabilmente sta facendo la revisione, e questa è esattamente la persona che non vuoi farlo. Il codice che vuoi rivedere è il codice davvero difficile che la gente guarda e lo trasmette come una sorta di magia nera. I DBA junior o semplicemente quelli cattivi, non saranno mai in grado di cogliere le sottigliezze di come funziona una query davvero difficile. Raramente, come mai, qualcuno dice mai: "Amico, non ho pensato di selezionare una singola riga da un tavolo usando la chiave primaria! Grazie DBA, sei un vero toccasana". Quindi, in questo scenario, in realtà tutto ciò che stai facendo è creare molto lavoro per poco valore. t pensa di selezionare una singola riga da una tabella usando la chiave primaria! Grazie DBA, sei un vero toccasana. "Quindi, in questo scenario, tutto ciò che stai facendo è creare molto lavoro per poco valore. t pensa di selezionare una singola riga da una tabella usando la chiave primaria! Grazie DBA, sei un vero toccasana. "Quindi, in questo scenario, tutto ciò che stai facendo è creare molto lavoro per poco valore.
In secondo luogo, è semplicemente più lavoro per il gruppo DB. Quello che probabilmente succederà anche se guardano altre cose è che lo daranno una rapida occhiata e qualcosa ci mancherà. Sono persone impegnate e la revisione del codice richiede molto tempo. In verità non è giusto che vengano incaricati di questo, perché è una scusa per tutti gli altri che sono pigri e li usano come uscita, che alla fine è ciò che accade. Qualcosa si interrompe nella produzione e lo sviluppatore sottolinea rapidamente "Bene, il DBA lo ha esaminato". Ora è vero per tutto il tempo, no, ma è vero per parte del tempo e spesso da parte di persone che hanno bisogno di rivedere il proprio codice. Quindi hai seppellito il DBA con un lavoro extra e hai costretto quella persona a essere responsabile degli errori di qualcun altro, quando quella persona probabilmente non lo fa
L'unico modo per risolvere veramente il problema è far scrivere a persone che sanno scrivere codice SQL. Di tanto in tanto dovrebbero ricevere input dai DBA? Certo che dovrebbero, ma ho sempre trovato, se non hai tempo di farlo bene la prima volta, quando troverai il tempo per sistemarlo.