我在mysql中的表feed有一个名为timestring
的RSS pubDate
列。
我想添加一个额外的列pubDate_Date
,并将RSS timestring
作为实际日期插入。
我创建了附加列formatted as DATE
并尝试使用以下代码用数据更新新列,但不知怎的,我无法使其正常工作。我是新手。
function pubDateToMySql($str){
return date('Y-m-d H:i:s', strtotime($str));
};
$sqlCommand = "SELECT * FROM feeds ORDER BY id ASC";
$query = mysqli_query($myConnection, $sqlCommand) or die (mysqli_error());
while ($row = mysqli_fetch_array($query)) {
$id = $row["id"];
$pubDate = $row["pubDate"];
$pubDate_Date = pubDateToMySql($pubDate);
$sql = mysqli_query($myConnection, "UPDATE feeds SET pubDate_Date =
$pubDate_Date WHERE ID = $id");
}
mysqli_free_result($query);
答案 0 :(得分:0)
在此SQL查询UPDATE feeds SET pubDate_Date = $pubDate_Date WHERE ID = $id
中,您必须使用'
中的日期值,如下所示:
UPDATE feeds SET pubDate_Date = '$pubDate_Date' WHERE ID = $id
还要检查数据库中的collumn pubDate_Date
的类型
答案 1 :(得分:0)
要完成这篇文章,我最终会这样做:
UPDATE feeds SET pubDate_Date = STR_TO_DATE(pubDate, '%a, %d %b %Y %T')