gpt4 book ai didi

Java:MySQL 数据截断:不正确的双值:列的 ''

转载 作者:行者123 更新时间:2023-11-29 18:39:08 26 4
gpt4 key购买 nike

由于我们正在处理大量数据,因此有一个方法正在生成查询。

        ...
switch(operation) {
case "insert":
query +="INSERT INTO " + table + " SET ";
for(int i=0; i<columns.size(); i++) {
query += "`"+columns.get(i)+"`='"+values.get(i)+"',";
}
query=query.substring(0, query.length()-1); //to remove the last " , " from the string
query += ";";
break;
...

当我们运行由它生成的查询时,此方法会生成此错误消息:

Data truncation: Incorrect double value: '' for column 'HITELKERET' at row 1

该方法生成的查询字符串为:

 INSERT INTO szallvev

SET `NEV2`='',`BANKSZAMLA`=' - - ',
`BANK1`='',
`ORSZAG`='',
`BANK2`='',
`IBAN`='',
`SWIFT`='',
`IRSZAM`='',
`VAROS`='',
`UTCA`='',
`KTJELLEG`='0',
`HAZSZAM`='',
`EPULET`='',
`LEPCSOHAZ`='',
`EMELET`='',
`AJTO`='',
`ADOSZAM`='',
`KOZADOSZAM`='',
`UGYINTEZO`='',
`EMAIL`='',
`TELEFON`='',
`MOBIL`='',
`INTERNET`='',
`FAX`='',
`FIZMOD`='0',
`CSOPADO`='',
`MUNKASZAM`='',
`HITELKERET`='',
`DEVARSZINT`='0',
`KEDV1`='0',
`NAPOK`='',
`ELADO`='0',
`UZLETKOTO`='',
`AZONOSITO`='test',
`NEV1`='test';

问题是,当我从 Java 控制台复制该字符串并将其粘贴到 MySQL 编辑器(我使用 SQLYOG)中时,查询执行时没有任何错误。

最佳答案

根据您的错误提示和我的经验,您在拼接查询字符串时没有获得 HITELKERET 列的正确数据类型。

看来数据库表中的HITELKERET字段应该是float类型。

请确保HITELKERET列不是空字符串,至少是默认的0

关于Java:MySQL 数据截断:不正确的双值:列的 '',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45050336/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com