猿问

适用于Java的SQLite无法正确更新行

下午好。我的数据库在Java上实现它时遇到了问题。我想更新这两列。Puntos行不会引起任何问题,并且每次我运行executeUpdate()时,该行都会递增。但是,在“ Victorias totales”中,executeUpdate()方法的行为就像


UPDATE EquiposIBAI 

SET Puntos=Puntos + 3, 'Victorias Totales' = 1 

WHERE NOMBRE='SD Eibar' AND fk_CodLiga=5;

我的意思是,该值不会增加,而只会被覆盖。


UPDATE EquiposIBAI 

SET Puntos=Puntos + 3, 'Victorias Totales' = 'Victorias Totales' + 1 

WHERE NOMBRE='SD Eibar' AND fk_CodLiga=5;

有什么办法可以解决?(我正在使用SQLite for Java)提前。


慕仙森
浏览 187回答 1
1回答

慕村225694

在SQLite中,您需要使用双引号("),方括号([])或反引号对列名进行转义。为了简单起见,我将使用双引号(这是标准的SQL方式),如下所示:UPDATE EquiposIBAI SET Puntos=Puntos + 3, "Victorias Totales" = "Victorias Totales" + 1 WHERE NOMBRE='SD Eibar' AND fk_CodLiga=5;单引号用于字符串文字,并且在第三行中使用得很好。或者,我将避免(在可能的情况下)在列名中使用空格,或者避免使用任何特殊字符。在这种情况下,我会将列名称更改为victorias_totales。
随时随地看视频慕课网APP

相关分类

Java
我要回答