【发布时间】:2019-11-11 16:40:34
【问题描述】:
我有日期列,如果它为空,则它不会进一步插入任何值。
在数据库中出现错误 CALL
return_ship_stones("1.01","IF",
"G", "EC/0122/19-20", "", "2",
"5.44x5.23x3.92" , "3822" , "1333041478" , "1" ,
"1333041478" , "Princess" , "3860.2200000000003", "", "125")
Error Code: 1292. Incorrect date value: '' for column ``.``.`_invoicedate` at row 5 0.000 sec
$updstmt = '';
foreach ($StoneArr as $Stone)
{
$textboxval = $_REQUEST['textboxval'];
$refVal = $textboxval;
$clientname = $_REQUEST['clientname'];
$updstmt .= 'CALL return_ship_stones('.'"'.$Stone["carat"].'"'.','.'"'.$Stone["clarity"].'"'.',
'.'"'.$Stone["color"].'"'.', '.'"'.$Stone["invcno"].'"'.', '.'"'.$StoneArr["invoicedate"].'"'.', '.'"'.$Stone["lab"].'"'.',
'.'"'.$Stone["measurement"].'"'.' , '.'"'.$Stone["ppt"].'"'.' , '.'"'.$Stone["qstonesid"].'"'.' , '.'"'.$Stone["qty"].'"'.' ,
'.'"'.$Stone["reportno"].'"'.' , '.'"'.$Stone["shape"].'"'.' , '.'"'.$Stone["totalvalue"].'"'.', '.'"'.$refVal.'"'.', '.'"'.$clientname.'"'.');';
}
我希望如果它为空,那么日期列应该为空或默认值,如“0000-00-00”。
【问题讨论】:
-
添加
coalesce('"'.$StoneArr["invoicedate"].'"', '0000-00-00') -
对绑定变量使用准备好的语句。
-
那是一些疯狂的代码......
-
$StoneArr["invoicedate"] 为空,您的例程需要一个有效日期,而 0000-00-00 不是日期。尝试发送 NULL 或类似 1970-01-02 的日期,您可以检查