我正在尝试从表单中检索用户数据并将数据保存到数据库中。我正在尝试检索以下数据: 1)名字2)姓氏3)主要 4)年
SQL语法:
CREATE TABLE `tblStudents` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`first_name` varchar(30) NOT NULL,
`last_name` varchar(50) NOT NULL,
`major` varchar(40) NOT NULL,
`year` date NOT NULL,
PRIMARY KEY (`id`)
)
我可以在数据库中保存除年份之外的所有内容。现在,选择的年份未保存在数据库中。它看起来像这样: 0000-00-00 。
在表单中,用户从下拉菜单中选择年份。
<select name="year" id="year">
<option value="2010">2010-06-12</option>
<option value="2011">2011-06-12</option>
<option value="2012">2012-06-12</option>
<option value="2013">2013-06-12</option>
<option value="2014">2014-06-12</option>
</select>
“年度”列的数据类型为日期。我是否需要指定其他内容才能将日期保存在数据库中。
答案 0 :(得分:1)
我将选项标签中的值从“2010”更改为“2010-06-12”,“2011-06-12”,2012-06-12“,”2013-06-12“....等等...(年 - 月 - 日)并能够将这些值保存到数据库中。
<select name="year" id="year">
<option value="2010-06-12">2010-06-12</option>
<option value="2011-06-12">2011-06-12</option>
<option value="2012-06-12">2012-06-12</option>
<option value="2013-06-12">2013-06-12</option>
<option value="2014-06-12">2014-06-12</option>
</select>
答案 1 :(得分:0)
它可能取决于所使用的特定数据库,但通常您将日期指定为文本,例如“2005-10-15”。所以,update mytable set somedate = '2010-10-15'
可以解决问题。
答案 2 :(得分:0)
如果你只想保存年份,你可以选择YEAR列(或者你可以选择SMALL(4))。
答案 3 :(得分:0)
如果您只需要YEAR
,我不同意您添加模糊月份和年份的最后答案。
我建议更新您的table
结构,将列类型更新为YEAR