Здравствуйте. Пытаюсь строить EntityMapping в Spring boot. Консоль возвращает следующую ошибку:
org.hibernate.tool.schema.spi.SchemaManagementException: Unable to execute schema management to JDBC target [alter table order_list add constraint FKkmi3b4i3e2i97f0umqy911fq9 foreign key (product_id) references order (ord_id)]
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: 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 'order (ord_id)' at line 1
И такая же проблема касается двух других сущностей. Не могу понять из-за чего вылазит ошибка... Связь между сущностями Product и Order должна проходить через таблицу Order_list, в которой содержится идентификаторы сущностей Order и Product. У таблиц User и Product должна быть связь один ко многим.
База данных: Order.java
@Entity
@Table(name="order")
public class Order {
@Id
private Long ord_id;
@ManyToOne
@JoinColumn(name="customer")
private User customer;
private String payment;
private String delivery;
private String status;
private java.sql.Timestamp order_date;
private String comment;
@OneToMany(mappedBy = "order")
private Set<Product> productList;
Product.java
import javax.persistence.*;
import java.util.Set;
@Entity
@Table(name="product")
public class Product {
@Id
private Long prod_id;
private String title;
@ManyToOne
@JoinColumn(name="category")
private Category category;
@OneToMany(mappedBy = "product")
private Set<Custom_fields> custom_fields;
@ManyToOne
@JoinColumn(name="manufacturer")
private Manufacturer manufacturer;
@OneToMany(mappedBy = "product")
private Set<Product_image> img;
@OneToMany(mappedBy = "product")
private Set<Reviews> reviews;
private Double sale;
private Double price;
private Long quantity;
private java.sql.Timestamp date_added;
private String description;
@ManyToOne
@JoinTable(name="order_list",
joinColumns={@JoinColumn(name="order_id")},
inverseJoinColumns={@JoinColumn(name="product_id")})
private Order order;
User.java
@Entity
@Table(name="user")
public class User {
@Id
private Long user_id;
private String address;
private String email;
private String login;
private String name;
private String password;
private Long phone;
private String role;
private String surname;
@OneToMany(mappedBy = "user")
private Set<Reviews> reviews;
@OneToMany(mappedBy = "customer")
private Set<Order> orders;
order
- это ключевое слово SQL, таблицу или её поле так назвать нельзя. Измените имя таблицы на что-нибудь другое:
@Entity
@Table(name="order_table")
public class Order {
...
}
Виртуальный выделенный сервер (VDS) становится отличным выбором
По нажатию кнопки должна появляться новое окно, и закрываться староеЯ использую контроллеры для каждого FXML
Добрый деньВ своём приложение сделал типа коллекцию музыки воспроизводимой MediaPlayer JavaFX