提问人:srinuvasarao atribiz 提问时间:11/16/2023 最后编辑:ewokxsrinuvasarao atribiz 更新时间:11/17/2023 访问量:26
错误代码 [1411];函数 str_to_date 的日期时间值不正确: '';嵌套异常是:函数 str_to_date 的日期时间值不正确:“”
error code [1411]; Incorrect datetime value: '' for function str_to_date; nested exception is : Incorrect datetime value: '' for function str_to_date
问:
当我在实时服务器上运行基于 Web 的应用程序时,我出现上述错误。它运行良好,直到几天前我们服务器崩溃。现在重新安装后,我们遇到了上述错误。
但是,同一应用程序在我的本地系统中运行,没有该错误。
我什至尝试按照同行的建议在查询下方运行,但没有用。 请帮助解决问题。
SET SESSION sql_mode = 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
SET SESSION sql_mode = 'ALLOW_INVALID_DATES';
SET SESSION sql_mode = '@old_sql_mode';
SET @old_sql_mode = @@sql_mode;
查询为 :>
insert into at_ph_stockist_invoice(stockist_id, invoice_no, invoice_date, invoice_amt, invoice_disc_per, invoice_disc,taxable_amt,gst_amt,
final_invoice_amt,invoice_status, pymnt_type, po_amt, po_id, po_num, po_dt,final_amt, added_by, added_on, added_ip, status_id,
pay_bill_date, amount_received, change_given, balance)
values(#{stockistId}, #{invoiceNumber}, DATE_FORMAT(STR_TO_DATE(#{invoiceDate}, '%e-%b-%Y'), '%Y-%m-%d'),
#{invoiceAmmount}, #{discountPercentage}, #{discountAmmount},#{taxableAmt}, #{gstAmount}, #{finalInvoiceAmount},if(#{paymentType}='credit', 'pending', 'paid'), #{paymentType},
#{poAmt}, #{poId}, #{poNumber}, DATE_FORMAT(STR_TO_DATE(#{poDate}, '%e-%b-%Y'), '%Y-%m-%d'),#{finalAmount},
#{addedBy}, now(), #{addedIp}, fn_getcodevalue_id('STS','Active'), DATE_FORMAT(STR_TO_DATE(#{payBillDt}, '%e-%b-%Y'), '%Y-%m-%d'),
#{amountReceived}, #{chngGiven}, #{balance});
答:
0赞
Adrian Maxwell
#1
插入在 3 个位置使用str_to_date:
INSERT INTO at_ph_stockist_invoice (
...
, invoice_date
, ...
, po_dt
, ...
, pay_bill_date
, ...
)
VALUES (
...
, DATE_FORMAT(STR_TO_DATE(#{invoiceDate}, '%e-%b-%Y'), '%Y-%m-%d')
, ...
, DATE_FORMAT(STR_TO_DATE(#{poDate}, '%e-%b-%Y'), '%Y-%m-%d')
, ...
, DATE_FORMAT(STR_TO_DATE(#{payBillDt}, '%e-%b-%Y'), '%Y-%m-%d')
, ...
)
SET SESSION sql_mode = 'STRICT_TRANS_TABLES';
SET SESSION sql_mode = 'NO_ZERO_DATE';
select
STR_TO_DATE('', '%e-%b-%Y') a
, DATE_FORMAT(STR_TO_DATE('', '%e-%b-%Y'), '%Y-%m-%d') a1
, STR_TO_DATE(' ', '%e-%b-%Y') b
, DATE_FORMAT(STR_TO_DATE(' ', '%e-%b-%Y'), '%Y-%m-%d') b1
, STR_TO_DATE(null, '%e-%b-%Y') c
, DATE_FORMAT(STR_TO_DATE(null, '%e-%b-%Y'), '%Y-%m-%d') c1
评论