2013-03-28 13 views
11

Esiste un comando in MySQL per reimpostare un campo sul valore predefinito? Sai, a favore della regola "Non ripetere te stesso", non voglio scrivere il valore di default (abbastanza lungo) più volte nel codice, solo una volta nel DB.Ripristina il campo MySQL sul valore predefinito

Mi sono guardato un po 'in giro su google, non ho trovato nulla. Sto iniziando a sospettare che un simile comando non esista, ma tuttavia, se lo fa, sy qui lo saprà. :)

+0

Una volta cambiato, il database non conosce il valore precedente. Quello che puoi fare è usare [transazioni] (http://dev.mysql.com/doc/refman/5.0/en/commit.html). Se non sei soddisfatto del nuovo valore, puoi 'ROLLBACK'. –

+0

Intendo il valore predefinito, non il valore iniziale. Deve saperlo, lo dà automaticamente ad ogni nuova riga! –

+0

e no, non penso che le trance siano ciò che sto cercando. –

risposta

21

MySQL ha un DEFAULTkeyword (e function) che farà esattamente quello che vuoi.

UPDATE table SET col = DEFAULT WHERE id = 2 

O

UPDATE table SET col = DEFAULT(col2) WHERE id = 3 
+0

Fantastico! Grazie, molto, non riuscivo a trovarlo da nessuna parte ... –

+2

Prego! Felice di poterti aiutare MrGreen –

Problemi correlati