无法从MySQL检索日期

时间:2014-08-12 12:27:23

标签: mysql datetime

我像这样在mySQL数据库中执行INSERT:

$sDate=date("Y-m-d h:i:s");
INSERT INTO tbl_1 (datum) VALUES ('$sDate')

它会执行INSERT 但是当我尝试通过选择这样的日期来找出唯一ID时:

SELECT id AS nyPost FROM tbl_1 WHERE datum ='$sDate'

它不会返回任何内容,甚至不会返回错误消息。基准格式是日期时间。 请问有什么不对? 代码:

    <?php
        $sDate=date("Y-m-d h:i:s");
        echo $sDate;
    If ($strNy) 
    {
        $_nyPrSQL="INSERT INTO begagnads (`anvId`, `tabort`, `datum`) VALUES ('8' , 'null', '$sDate')";

    //  echo  $_nyPrSQL;
        if (!mysqli_query($con,$_nyPrSQL)) 
        {die('Error: ' . mysqli_error($con));}
        else
        {
        echo "<br>1 record added";
        }

$result = mysqli_query($con,"SELECT id FROM begagnads WHERE DATE(datum) ='$sDate' ");

while($row = mysqli_fetch_array($result)) {
  echo $row['id'] . " " . $row['datum'];
  $nyPost= $row['id'];
  echo "<br>";
}
    ?>

2 个答案:

答案 0 :(得分:0)

你需要这个:

INSERT INTO tbl_1 (datum) VALUES ($sDate)

使用以下方法尝试查看上面名为tbl_1的表:

SELECT * FROM tbl_1

答案 1 :(得分:0)

MySql DATE()函数提取日期或日期时间表达式expr的日期部分。

mysql> SELECT DATE('2003-12-31 01:02:03');
        -> '2003-12-31'

如果您想仅通过DATE找到

SELECT id FROM begagnads WHERE DATE(datum) = DATE('$sDate')

如果您发现日期和时间,则不需要DATE()功能

SELECT id FROM begagnads WHERE datum = '$sDate'