【问题标题】:PHP Insert SQL datePHP 插入 SQL 日期
【发布时间】:2015-11-05 12:23:15
【问题描述】:

我有这个代码:

$date = '1991-08-13';

$sql =  "INSERT into TABLEA
        (nombre, apellido1, apellido2, direccion, codigoPostal,fechaNacimiento, notas) 
        VALUES 
        ('agds', 'asdgff', 'gerth', 'dfghdfghd efdgvwr', 86486, $date, 'ShhhHH');";

我的问题是下一个:

当我插入 $date 的值为:1991-13-08 但在数据库中出现:0000-00-00 我看过其他带有解决方案的帖子,例如:STR_TO_DATE() 它对我不起作用,它插入 NULL。还有其他解决方案吗?

编辑:缺少:$date 中的''(应该是:'$date')感谢您的更正! (:

【问题讨论】:

标签: php mysql date sql-insert


【解决方案1】:

请用单引号将 $date 括起来

$sql = "INSERT into TABLEA (nombre, apellido1, apellido2, direccion, codigoPostal,fechaNacimiento, notas) VALUES ('agds', 'asdgff', 'gerth', 'dfghdfghd efdgvwr', 86486, '$date', 'ShhhHH');";

【讨论】:

  • 您还需要将日期转换为yyyy-mm-dd 格式
  • 日期不是那种格式,我只是打错了。这正是@Arun Krish 所说的。
  • @Roucher 如果 Arun 的答案是正确的,我认为您选择了错误的答案作为接受的答案。
  • 两者都是正确的,因为两者都标记了错误:'$date' 我选择另一个的主要原因是时间。 Imran 之前发布过,但 Arun 确实解释得更好
【解决方案2】:

或许你可以这样试试:

$date = '1991-08-13'; //yyyy-mm-dd

$sql =  "INSERT into TABLEA
        (nombre, apellido1, apellido2, direccion, codigoPostal,fechaNacimiento, notas) 
        VALUES 
        ('agds', 'asdgff', 'gerth', 'dfghdfghd efdgvwr', 86486, '$date', 'ShhhHH');";

【讨论】:

    【解决方案3】:

    使用Str_to_date

    Str_to_date('1991-13-08','%Y-%d-%m')
    

    或者试试这个:-

    $sql = "INSERT into TABLEA (nombre, apellido1, apellido2, 
    direccion, codigoPostal,fechaNacimiento, notas) 
    VALUES ('agds', 'asdgff', 'gerth', 'dfghdfghd efdgvwr',
    86486, Str_to_date("1991-13-08","%Y-%d-%m"), 'ShhhHH');";
    

    【讨论】:

    • “我看过其他帖子的解决方案,例如:STR_TO_DATE(),但它对我不起作用,它会插入 NULL”
    • $sql = "INSERT into TABLEA (nombre, apellido1, apellido2, direccion, codigoPostal,fechaNacimiento, notas) 值 ('agds', 'asdgff', 'gerth', 'dfghdfghd efdgvwr', 86486 , str_to_date("1991-13-08","%Y-%d-%m"), 'ShhhHH');";
    • 试试这个查询@Roucher
    • 返回 NULL,如果我已经说过两次,那不是,我无法理解为什么你专注于说“str_to_date”并进行更正,无论如何感谢您的尝试
    • 我想我可能不理解你,但是这里指定了数据格式(不是我的):dev.mysql.com/doc/refman/5.1/en/date-and-time-types.html
    猜你喜欢
    • 1970-01-01
    • 2016-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-21
    相关资源
    最近更新 更多