Quindi il time comunque sia settato ha sempre ore, minuti e secondi.

Ecco il perchè alla visualizzazione i secondi sono 00 perchè essendo non settati prendeno il valore di partenza/default.

Quindi significa che lo script è corretto e che devo cambiare solamente il formato nel database.
Una normale stringa andrebbe bene?