如何将HH,MM,AM / PM的日期存储到MySQL

时间:2010-10-04 19:48:35

标签: mysql time

我正在玩这个http://www.phpform.org/来创建一个表单。

表格html之一是以下内容。

我不确定我应该将哪种类型用于HH,MM和AM / PM。

我应该使用2个长度的TINYINT用于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 个答案:

答案 0 :(得分:3)

将其存储为常规的24小时HH:MM:SS(mysql时间类型)。输出时进行格式化。您可以使用TIME_FORMAT()将其重新格式化为AM / PM格式:

mysql> SELECT TIME_FORMAT('22:22:22', '%r');
        -> '10:22:22 PM'

答案 1 :(得分:2)

三个字段共同代表一个时间。最合适的类型是TIME。没有必要将它们分开,这会使您的数据库变得比它需要的更复杂。