[英]Insert date into sql database
我的输入日期格式为'%m-%d-%Y'(例如:12/12/2012),我的执行查询
"Insert into employeedetails(FirstName,LastName,JobTitle,StartedDate,Salary,CompanyName) values ('"+fname+"','"+lname+"','"+job+"',STR_TO_DATE('"+date+"', '%m-%d-%Y'),'"+salary+"','"+company+"')";
执行查询时,它将引发有关格式错误的错误
当我手动以这种格式(2012-12-12)插入日期时,它正在工作,因此我需要从2012年12月12日转换为2012年12月12日
使用DATE_FORMAT
以下脚本使用DATE_FORMAT()函数显示不同的格式。 now()
示例
DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p')
DATE_FORMAT(NOW(),'%m-%d-%Y')
DATE_FORMAT(NOW(),'%d %b %y')
DATE_FORMAT(NOW(),'%d %b %Y %T:%f')
Insert into employeedetails(FirstName,LastName,JobTitle,StartedDate,Salary,CompanyName) values ('"+fname+"','"+lname+"','"+job+"',DATE_FORMAT(NOW(), '%m-%d-%Y'),'"+salary+"','"+company+"')";
您必须考虑表的StartedDate
字段的类型才能格式化输入的数据
然后使用DATE
, DATETIME
, TIMESTAMP
类型的特定格式
通过使用日期和时间函数上方列出的DATE_FORMAT
,然后区分字段类型的正确格式
DATE_FORMAT($datetoformat,'%Y-%m-%d'); // for date format
DATE_FORMAT($datetoformat,'YYYY-MM-DD HH:MM:SS'); // datetime format
据我所知,你说的输入日期看起来像
12/12/2012
但是你给
'%m-%d-%Y'
到STR_TO_DATE。 这对我来说不太合理。
你不应该给
'%m/%d/%Y'
到STR_TO_DATE?
在PHP中,您应该使用
"Insert into employeedetails(FirstName,LastName,JobTitle,StartedDate,Salary,CompanyName) values
('".$fname."','".$lname."','".$job."','".date('d/m/Y')."','".$salary."','".$company."')";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.