MySQL fornisce tale opzione per le query ad hoc. Si chiama --safe-updates (o --i-am-a-dummy). Come altri hanno sottolineato, abbiamo già commesso l'errore . Quelli di noi che eseguono query ad hoc tutte le volte, a volte alle 1 del mattino, hanno commesso l'errore più di una volta.
Anche se normalmente odio i sistemi "a prova di idiota" e "sei sicuro", mi piace questa opzione. Devi sempre stare attento, ma anche facendo attenzione creerai forse un errore ogni mille ore. Se trascorri 50 ore alla settimana come utente root sui sistemi di produzione, un errore ogni mille ore è di 2 1/2 maggiori avvitamenti all'anno. Per questo motivo, e un altro, troviamo - gli aggiornamenti sicuri sono molto utili.
ci sono due ragioni che è più utile di quanto la maggior parte degli SM di conferma messaggi. Innanzitutto rileva qualcosa che è più probabile che sia un errore, a differenza di "sei sicuro di voler eliminare quel file?". La maggior parte dei file elimina davvero desiderati, quindi la conferma è un fastidio. La maggior parte "elimina dagli utenti ", se manca una clausola where, è davvero un errore. In secondo luogo, punta allo esattamente quale è il probabile problema - la clausola missing where. È come se la conferma dell'eliminazione del file fosse abbastanza intelligente da dire "quella è la nuova copia aggiornata del marchio , non la vecchia copia che pensi di eliminare. Sei davvero in grado di eliminare la nuova copia, o hai intenzione di eliminare?" quello vecchio invece? "
In ogni caso, in genere odio "prova idiota", ma mi piace - aggiornamenti sicuri, e se è un'opzione chi non lo desidera non è necessario usarlo. La mia preoccupazione è che se lavori costantemente su un sistema che ha la funzione, qualcuno potrebbe diventare sciatto e avere problemi quando passa a un sistema senza di esso, come passare da MySQL a MSSQL.
Gratta e l'ultimo avvertimento - che nessuno sano di mente avrebbe passare a MS dopo familiarizzare con l'open source. :)
stai assumendo la morte cerebrale non sarebbe sufficiente aggiungere un WHERE 1 = 1 a memoria e potrebbe iniziare a pensare, invece. Non penso che succederà: dopotutto sono morti nel cervello. Nel frattempo, ogni azienda richiederebbe l'opzione "Josh" da impostare in ogni momento per "sicurezza" e il mondo pensante ti darebbe la caccia e ucciderti. IMHO, ovviamente, YMMV. –
Quindi intendi dirmi che è normale rilasciare intenzionalmente aggiornamenti e cancellazioni che non hanno una clausola where e il "mondo del pensiero" sarebbe così infastidito da questa opzione che mi vorrebbe morto? – Josh
Non compro l'argomento che le persone imparerebbero a digitare 'WHERE 1 = 1' dove non lo vogliono veramente. Per sviluppare questa abitudine, dovevano avere situazioni frequenti in cui volevano davvero che l'aggiornamento colpisse ogni riga, e ciò sembra molto meno comune della situazione in cui non lo * vuoi *. Il punto di richiedere qualcosa come 'WHERE 1 = 1' non è di proteggere contro le persone che * pensavano * volessero colpire ogni riga, è proteggere contro le persone che hanno colpito per sbaglio F5 troppo presto o selezionato tutto tranne la clausola WHERE . –