I created a Project in Spring 2 using Java 11. And For Storing Data I am Using Mysql Workbench 8.0.33 for which I have added mysql-connector-java dependency. Now on Sharing it to my Friends in there Eclipse IDE its giving this sort of Error , and I don't have any Idea how to solve this , Got Some solutions but It's not getting fixed. Can anyone help with this ?? ](https://i.stack.imgur.com/5XbBa.jpg)
My Entity Class --
package com.example.backend.entity;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import org.springframework.data.annotation.CreatedDate;
import org.springframework.data.annotation.LastModifiedDate;
@Entity
@Table(name = "tourist")
public class TouristTable {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
private String fullName;
private String address;
private String gender;
private String dob;
private String contact;
private String email;
private String nationality;
private String destination;
private String arrivalDate;
private String departure;
private String paymentInfo;
private String vaccinationStatus;
//
@Temporal(TemporalType.TIMESTAMP)
@CreatedDate
private Date createdAt;
// @Temporal(TemporalType.TIMESTAMP)
// @LastModifiedDate
// private Date modifiedAt;
public TouristTable() {
super();
// TODO Auto-generated constructor stub
}
public TouristTable(long id, String fullName, String address, String gender, String dob, String contact,
String email, String nationality, String destination, String arrivalDate, String departure, String paymentInfo,
String vaccinationStatus, Date createdAt) {
super();
this.id = id;
this.fullName = fullName;
this.address = address;
this.gender = gender;
this.dob = dob;
this.contact = contact;
this.email = email;
this.nationality = nationality;
this.destination = destination;
this.arrivalDate = arrivalDate;
this.departure = departure;
this.paymentInfo = paymentInfo;
this.vaccinationStatus = vaccinationStatus;
this.createdAt = createdAt;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getFullName() {
return fullName;
}
public void setFullName(String fullName) {
this.fullName = fullName;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getDob() {
return dob;
}
public void setDob(String dob) {
this.dob = dob;
}
public String getContact() {
return contact;
}
public void setContact(String contact) {
this.contact = contact;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getNationality() {
return nationality;
}
public void setNationality(String nationality) {
this.nationality = nationality;
}
public String getDestination() {
return destination;
}
public void setDestination(String destination) {
this.destination = destination;
}
public String getArrivalDate() {
return arrivalDate;
}
public void setArrivalDate(String arrivalDate) {
this.arrivalDate = arrivalDate;
}
public String getDeparture() {
return departure;
}
public void setDeparture(String departure) {
this.departure = departure;
}
public String getPaymentInfo() {
return paymentI;
}
public void setPaymentInfo(String paymentInfo) {
this.paymentInfo = paymentInfo;
}
public String getVaccinationStatus() {
return vaccinationStatus;
}
public void setVaccinationStatus(String vaccinationStatus) {
this.vaccinationS = vaccinationStatus;
}
public Date getCreatedAt() {
return createdAt;
}
public void setCreatedAt(Date createdAt) {
this.createdAt = createdAt;
}
@Override
public String toString() {
return "TouristTable [id=" + id + ", fullName=" + fullName + ", address=" + address + ", gender=" + gender
+ ", dob=" + dob + ", contact=" + contact + ", email=" + email + ", nationality=" + nationality
+ ", destination=" + destination + ", arrivalDate=" + arrivalDate + ", departure=" + departure
+ ", paymentInfo=" + paymentInfo + ", vaccinationStatus=" + vaccinationStatus + ", createdAt=" + createdAt + "]";
}
// public Date getModifiedAt() {
// return modifiedAt;
// }
//
// public void setModifiedAt(Date modifiedAt) {
// this.modifiedAt = modifiedAt;
// }
}
In The Project I was creating a table using spring in MySQL Workbench 8.0.33 and Hibernate created the table using it in my system but when ON SHARING my friend is getting this sort of Error ![text][in the Image this is the code of the application.properties file and the console's code]
I was getting the error like =========||==============|__/=///_/
:: Spring Boot :: (v2.7.16-SNAPSHOT)
2023-10-23 15:18:35.519 INFO 15328 --- [ restartedMain] com.example.backend.BackendApplication : Starting BackendApplication using Java 11.0.17 on DESKTOP-1KOSGI5 with PID 15328 (C:\Users\Mohammad Tauheed\Downloads\backend (1)\backend\target\classes started by Mohammad Tauheed in C:\Users\Mohammad Tauheed\Downloads\backend (1)\backend)
2023-10-23 15:18:35.522 INFO 15328 --- [ restartedMain] com.example.backend.BackendApplication : No active profile set, falling back to 1 default profile: "default"
2023-10-23 15:18:35.697 INFO 15328 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable
2023-10-23 15:18:35.698 INFO 15328 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'
2023-10-23 15:18:37.610 INFO 15328 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2023-10-23 15:18:37.736 INFO 15328 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 104 ms. Found 2 JPA repository interfaces.
2023-10-23 15:18:39.202 INFO 15328 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)
2023-10-23 15:18:39.220 INFO 15328 --- [ restartedMain] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2023-10-23 15:18:39.221 INFO 15328 --- [ restartedMain] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.80]
2023-10-23 15:18:39.457 INFO 15328 --- [ restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2023-10-23 15:18:39.457 INFO 15328 --- [ restartedMain] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 3758 ms
2023-10-23 15:18:39.534 INFO 15328 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...
2023-10-23 15:18:40.164 INFO 15328 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.
2023-10-23 15:18:40.182 INFO 15328 --- [ restartedMain] o.s.b.a.h2.H2ConsoleAutoConfiguration : H2 console available at '/h2-console'. Database available at 'jdbc:mysql://localhost:3306/touristdata'
2023-10-23 15:18:40.715 INFO 15328 --- [ restartedMain] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default]
2023-10-23 15:18:40.841 INFO 15328 --- [ restartedMain] org.hibernate.Version : HHH000412: Hibernate ORM core version 5.6.15.Final
2023-10-23 15:18:41.279 INFO 15328 --- [ restartedMain] o.hibernate.annotations.common.Version : HCANN000001: Hibernate Commons Annotations {5.1.2.Final}
2023-10-23 15:18:41.481 INFO 15328 --- [ restartedMain] org.hibernate.dialect.Dialect : HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect
Hibernate: create table tourist (id integer not null, address varchar(255), arrival_date varchar(255), contact varchar(255), created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, departure varchar(255), destination varchar(255), dob varchar(255), email varchar(255), gender varchar(255), modified_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE, name varchar(255), nationality varchar(255), payment_info varchar(255), vaccination_status varchar(255), primary key (id)) engine=InnoDB
2023-10-23 15:18:42.624 WARN 15328 --- [ restartedMain] o.h.t.s.i.ExceptionHandlerLoggedImpl : GenerationTarget encountered exception accepting command : Error executing DDL "create table tourist (id integer not null, address varchar(255), arrival_date varchar(255), contact varchar(255), created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, departure varchar(255), destination varchar(255), dob varchar(255), email varchar(255), gender varchar(255), modified_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE, name varchar(255), nationality varchar(255), payment_info varchar(255), vaccination_status varchar(255), primary key (id)) engine=InnoDB" via JDBC Statement
org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "create table tourist (id integer not null, address varchar(255), arrival_date varchar(255), contact varchar(255), created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, departure varchar(255), destination varchar(255), dob varchar(255), email varchar(255), gender varchar(255), modified_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE, name varchar(255), nationality varchar(255), payment_info varchar(255), vaccination_status varchar(255), primary key (id)) engine=InnoDB" via JDBC Statement
at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:67) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final]
at org.hibernate.tool.schema.internal.AbstractSchemaMigrator.applySqlString(AbstractSchemaMigrator.java:581) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final]
at org.hibernate.tool.schema.internal.AbstractSchemaMigrator.applySqlStrings(AbstractSchemaMigrator.java:526) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final]
at org.hibernate.tool.schema.internal.AbstractSchemaMigrator.createTable(AbstractSchemaMigrator.java:293) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final]
at org.hibernate.tool.schema.internal.GroupedSchemaMigratorImpl.performTablesMigration(GroupedSchemaMigratorImpl.java:74) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final]
at org.hibernate.tool.schema.internal.AbstractSchemaMigrator.performMigration(AbstractSchemaMigrator.java:220) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final]
at org.hibernate.tool.schema.internal.AbstractSchemaMigrator.doMigration(AbstractSchemaMigrator.java:123) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final]
at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:196) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final]
at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:85) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final]
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:335) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final]
at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:471) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final]
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1498) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final]
at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:58) ~[spring-orm-5.3.30.jar:5.3.30]
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365) ~[spring-orm-5.3.30.jar:5.3.30]
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409) ~[spring-orm-5.3.30.jar:5.3.30]
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396) ~[spring-orm-5.3.30.jar:5.3.30]
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341) ~[spring-orm-5.3.30.jar:5.3.30]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) ~[spring-beans-5.3.30.jar:5.3.30]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) ~[spring-beans-5.3.30.jar:5.3.30]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.30.jar:5.3.30]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.30.jar:5.3.30]
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.30.jar:5.3.30]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.30.jar:5.3.30]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.30.jar:5.3.30]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.30.jar:5.3.30]
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1160) ~[spring-context-5.3.30.jar:5.3.30]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:911) ~[spring-context-5.3.30.jar:5.3.30]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.30.jar:5.3.30]
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.16-SNAPSHOT.jar:2.7.16-SNAPSHOT]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) ~[spring-boot-2.7.16-SNAPSHOT.jar:2.7.16-SNAPSHOT]
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.16-SNAPSHOT.jar:2.7.16-SNAPSHOT]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.7.16-SNAPSHOT.jar:2.7.16-SNAPSHOT]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.7.16-SNAPSHOT.jar:2.7.16-SNAPSHOT]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.7.16-SNAPSHOT.jar:2.7.16-SNAPSHOT]
at com.example.backend.BackendApplication.main(BackendApplication.java:10) ~[classes/:na]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) ~[spring-boot-devtools-2.7.16-SNAPSHOT.jar:2.7.16-SNAPSHOT]
Caused by: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ', name varchar(255), nationality varchar(255), payment_info varchar(255), vaccin' at line 1
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:121) ~[mysql-connector-j-8.0.33.jar:8.0.33]
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) ~[mysql-connector-j-8.0.33.jar:8.0.33]
at com.mysql.cj.jdbc.StatementImpl.executeInternal(StatementImpl.java:763) ~[mysql-connector-j-8.0.33.jar:8.0.33]
at com.mysql.cj.jdbc.StatementImpl.execute(StatementImpl.java:648) ~[mysql-connector-j-8.0.33.jar:8.0.33]
at com.zaxxer.hikari.pool.ProxyStatement.execute(ProxyStatement.java:94) ~[HikariCP-4.0.3.jar:na]
at com.zaxxer.hikari.pool.HikariProxyStatement.execute(HikariProxyStatement.java) ~[HikariCP-4.0.3.jar:na]
at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:54) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final]
... 39 common frames omitted
2023-10-23 15:18:42.629 INFO 15328 --- [ restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
2023-10-23 15:18:42.649 INFO 15328 --- [ restartedMain] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
2023-10-23 15:18:43.425 WARN 15328 --- [ restartedMain] JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning
2023-10-23 15:18:44.002 INFO 15328 --- [ restartedMain] o.s.b.d.a.OptionalLiveReloadServer : LiveReload server is running on port 35729
2023-10-23 15:18:44.053 INFO 15328 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''
2023-10-23 15:18:44.071 INFO 15328 --- [ restartedMain] com.example.backend.BackendApplication : Started BackendApplication in 9.384 seconds (JVM running for 10.704)
I just got the solution from one of my Teacher as I was creating the variable names for the table Entity , I just created the variable's name almost same to the keyword used in mysql that's why it was giving that error the Above Code I have added is corrected now in which I was using "paymentInfo" as the variable name I changed it to "paymentI" and "vaccinationStatus" to "vaccinationS" and on executing I got Error Free Code ---