Java.sql.sqlsyntaxerrorexception: Unbekannte Spalte 'u1_0.userid' in der Feldliste 'nach Springboot -Upgrade auf 3
Posted: 03 Mar 2025, 23:44
Nach dem Spring -Boot -Update auf Version 3 wird der Fehler erhalten, der vor dem Versuch, das Hinzufügen/Aktualisieren von Benutzerpreferenzen in MySQL DB zu speichern. Und der Spaltenname und der Name des Entitätsnamens stimmen auch überein. Der Fehler erfolgt nur für einen Einsatz. Bei der Überprüfung der Funktion Save () zum Hinzufügen einer neuen Zeile findet der Fehler für die unten erwähnte Auswahlabfrage statt. von Benutzer u1_0 wobei u1_0.user_id =?] [Unbekannte Spalte 'u1_0.userid' in 'Feldliste'] [n/a]; Sql [n /a]
at org.springframework.orm.jpa.vendor.hibernatejpadialect.ConverthiberNateAccessException (Hibernatejpadialect.java:277) ~ [Spring-ARM-6.1.14.jar: 6.1.14]
ATR. org.springframework.orm.jpa.vendor.hibernatejpadialect.translateExceptionifpossible (hibernatejpadialect.java:241) ~ [Spring-ARM-6.1.14.Jar: 6.1.14]
at org.springframework.orm.jpa.abstractentityManagerFactoryBean.translateExceptionIfPossible (AbstractentityManagerFactoryBean.java:550) ~ [Spring-ARM-6.1.14.Jar: 6.1.14]
AT org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:61) ~[spring-tx-6.1.14.jar:6.1.14]
Caused by: java.sql.sqlsyntaxerRorexception: Unbekannte Spalte
'u1_0.userid 'in' Feldliste 'at
com.mysql.cj.jdbc.exceptions.sqLerror.CreatesqLexceptions(sqLerror.java:121)< • ~ · mysql-connector-j-8.0.33.jar:8.0.33] at
com.mysql.cj.jdbc.clientpreparedStatement at
com.mysql.cj.jdbc.ClientPreparedStatement.executeQuery(ClientPreparedStatement.java:972)
~[mysql-connector-j-8.0.33.jar:8.0.33] at
com.zaxxer.hikari.pool.proxyPrepararedStatement.executeQuery(ProxyPrepararedStatement.java:52)
~.. />com.zaxxer.hikari.pool.hikariproxyprepararedStatement.executeQuery(hikariproxyPrepararedStatement.java)
~..hikaricp-5.1.0.jar:na] at
org.hibernate.sql.results /> < /blockquote>
Verwendete Versionen < /strong> < /p>
MySQL Server: 8.0.39 < /li>
Mysql-Anschluss: 8.0.31 < /li>
jakarta.Peristence-apli. />
Benutzerpreferenzen Entität [/b]
Benutzerentität
at org.springframework.orm.jpa.vendor.hibernatejpadialect.ConverthiberNateAccessException (Hibernatejpadialect.java:277) ~ [Spring-ARM-6.1.14.jar: 6.1.14]
ATR. org.springframework.orm.jpa.vendor.hibernatejpadialect.translateExceptionifpossible (hibernatejpadialect.java:241) ~ [Spring-ARM-6.1.14.Jar: 6.1.14]
at org.springframework.orm.jpa.abstractentityManagerFactoryBean.translateExceptionIfPossible (AbstractentityManagerFactoryBean.java:550) ~ [Spring-ARM-6.1.14.Jar: 6.1.14]
AT org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:61) ~[spring-tx-6.1.14.jar:6.1.14]
Caused by: java.sql.sqlsyntaxerRorexception: Unbekannte Spalte
'u1_0.userid 'in' Feldliste 'at
com.mysql.cj.jdbc.exceptions.sqLerror.CreatesqLexceptions(sqLerror.java:121)< • ~ · mysql-connector-j-8.0.33.jar:8.0.33] at
com.mysql.cj.jdbc.clientpreparedStatement at
com.mysql.cj.jdbc.ClientPreparedStatement.executeQuery(ClientPreparedStatement.java:972)
~[mysql-connector-j-8.0.33.jar:8.0.33] at
com.zaxxer.hikari.pool.proxyPrepararedStatement.executeQuery(ProxyPrepararedStatement.java:52)
~.. />com.zaxxer.hikari.pool.hikariproxyprepararedStatement.executeQuery(hikariproxyPrepararedStatement.java)
~..hikaricp-5.1.0.jar:na] at
org.hibernate.sql.results /> < /blockquote>
Verwendete Versionen < /strong> < /p>
MySQL Server: 8.0.39 < /li>
Mysql-Anschluss: 8.0.31 < /li>
jakarta.Peristence-apli. />
Code: Select all
@Service
public class UserPreferencesImpl implements UserService {
@Autowired
UserPreferencesRepo userPreferenceRepo;
@Override
public StatusResponse addOrUpdateUserPreferences(){
UserPreferences npe = new UserPreferences();
User user = new User ();
user.setUserId("sampele-user-id");
ne.setUser(user);
userPreferenceRepo.save(ne);
}
}
< /code>
Repo -Klasse < /p>
public interface UserPreferencesRepo extends JpaRepository {
}
Code: Select all
@AllArgsConstructor
@NoArgsConstructor
@Data
@Entity
@Table(name = "user_preferences")
public class UserPreferences implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "up_id", unique = true, nullable = false)
private String upId;
@OneToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "User_Id")
private User user;
}
Code: Select all
@AllArgsConstructor
@NoArgsConstructor
@Getter
@Setter
@Entity
@Table(name = "user")
public class User implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Column(name = "User_Id", unique = true, nullable = false, length = 64)
private String userId;
@Column(name = "First_Name", length = 128)
private String firstName;
@Column(name = "Last_Name", length = 128)
private String lastName;
}