非常感谢您对我的最后一个问题的帮助。这是相关的,但我不想将此问题隐藏在另一个内部。.我在占位符内使用“ DATE_ADD(NOW(),INTERVAL $ interval)”时遇到问题。在我使用占位符之前,此行工作得很好,而不是返回为空。

  $store = qq(INSERT INTO main (creator_name,relationship,time) VALUES(?,?,?) );

  my $sth = $dbh->prepare($store);
  $sth->execute($data{creatorname},$data{relationship}, "DATE_ADD(NOW(), INTERVAL $interval)");


还有另一种添加DATE_NOW的方法,从语法上来说是正确的吗?我试过像

        $store = qq(INSERT INTO main (creator_name,relationship,time) VALUES(?,?, DATE_ADD(NOW(), INTERVAL $interval)) );


并且错误地指出语法错误。至少将执行的代码放在顶部,它只是将值保留为空。通过这种尝试,它甚至不会尝试。

最佳答案

您希望以下内容打印ABC吗?

$x = 'uc "abc"';
print $x;


不,那没有道理。在SQL中也是一样。

字符串DATE_ADD(NOW(), INTERVAL ...)对于time字段肯定不是有效值。




  它错误地指出语法错误。


我敢肯定,该消息比这更具体。您也没有提供$interval的值,否则,我们将无法知道导致语法错误的原因。

关于mysql - MySQL占位符不适用于DATE_ADD(Perl),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20231483/

10-12 00:43
查看更多