TIMESTAMP jest w rzeczywistości podobny do a DATETIME, ale pierwszy zadeklarowany TIMESTAMP zostanie automatycznie zainicjowany:
http://dev.mysql.com/doc/refman /5.0/pl/timestamp-initialization.html
Więc kiedy piszesz TIMESTAMP bez atrybutów po raz pierwszy, MySQL konwertuje go wewnętrznie dodając "DEFAULT CURRENT_TIMESTAMP". Gdy MySQL napotka drugi TIMESTAMP, w którym jawnie ustawisz CURRENT_TIMESTAMP, wystąpi konflikt.
Jeśli jednak zdefiniujesz CURRENT_TIMESTAMP w pierwszym wierszu, jest to zbyteczne - a ponieważ nie określisz nic w drugim, drugiemu nie zostanie przypisana wartość domyślna i nie wejdzie w konflikt.
Z powyższego linku:„Nie musi to być pierwsza kolumna TIMESTAMP w tabeli, która jest automatycznie inicjowana lub aktualizowana do bieżącego znacznika czasu. Jednak, aby określić automatyczną inicjalizację lub aktualizację dla innej kolumny TIMESTAMP, należy pominąć automatyczne właściwości dla pierwszy."