В: Какъв е правилният формат/стойност за DATETIME
литерал в MySQL оператор?
А: В MySQL, стандартният формат за DATETIME
буквалният е:
'YYYY-MM-DD HH:MI:SS'
с времевия компонент като 24-часов часовник (т.е. цифрите на часовете, предоставени като стойност между 00 и 23).
MySQL предоставя вградена функция STR_TO_DATE
който може да конвертира низове в различни формати в DATE
или DATETIME
типове данни.
Така че, като алтернатива, можете също да посочите стойността на DATETIME
с извикване на тази функция, както следва:
STR_TO_DATE('12/21/2012 1:13:58 PM','%m/%d/%Y %h:%i:%s %p')
Така че можете да накарате MySQL да извърши преобразуването вместо вас в INSERT
изявление, ако вашите VALUES
списъкът изглеждаше така:
... VALUES ('@stockID', STR_TO_DATE('@dateUpdated','%m/%d/%Y %h:%i:%s %p');
(Забелязвам, че липсва задължителна запетая между двата литерала във вашите VALUES
списък.)
MySQL позволява известна свобода в разделителите между частите на DATETIME
буквално, така че не са строго задължителни.
Справочно ръководство за MySQL 5.5.