Как сохранить дату с HH, MM, AM / PM в MySQL - PullRequest
1 голос
/ 04 октября 2010

Я играл с этим http://www.phpform.org/, чтобы создать форму.

Одна из форм html выглядит следующим образом.

Я не уверен, какой тип шрифта мне следует использоватьиспользуйте его для HH, MM и AM / PM.

Должен ли я использовать TINYINT с 2 длиной для HH, MM и VARCHAR с 2 длиной для AM / PM?

Должен ли я иметь отдельное поле длякаждый?

...
...
<li id="li_1" >
        <label class="description" for="element_1">Time </label>
        <span>
            <input id="element_1_1" name="element_1_1" class="element text " size="2" type="text" maxlength="2" value=""/> : 
            <label>HH</label>
        </span>
        <span>
            <input id="element_1_2" name="element_1_2" class="element text " size="2" type="text" maxlength="2" value=""/> : 
            <label>MM</label>
        </span>
        <span>
            <input id="element_1_3" name="element_1_3" class="element text " size="2" type="text" maxlength="2" value=""/>
            <label>SS</label>
        </span>
        <span>
            <select class="element select" style="width:4em" id="element_1_4" name="element_1_4">
                <option value="AM" >AM</option>
                <option value="PM" >PM</option>
            </select>
            <label>AM/PM</label>
        </span> 
        </li>   

Спасибо заранее.

Ответы [ 2 ]

3 голосов
/ 04 октября 2010

Храните как обычные 24 часа в формате ЧЧ: ММ: СС (тип времени mysql).Делайте форматирование при выводе.Вы можете использовать TIME_FORMAT () , чтобы переформатировать его в формат AM / PM:

mysql> SELECT TIME_FORMAT('22:22:22', '%r');
        -> '10:22:22 PM'
2 голосов
/ 04 октября 2010

Три поля вместе представляют время. Наиболее подходящий тип для этого будет TIME. Нет необходимости хранить их отдельно, и это делает вашу базу данных более сложной, чем она должна быть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...