spring.jpa.hibernate.ddl-auto=update
org.hibernate.tool.schema.spi.CommandAcceptanceException:通过JDBC语句执行DDL“CREATE table order(id bigint not null auto_increment,order_date date,user_id bigint,primary key(id))Engine=MYISAM”时出错
由:java.SQL.sqlsyntaxerrorexception引起:您的SQL语法中有一个错误;请查看与您的MySQL服务器版本相对应的手册,以便在第1行“order(id)”附近使用正确的语法
我的映射如下所示:
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@MappedSuperclass
public abstract class BaseEntity {
@Id
@GeneratedValue(
strategy = GenerationType.IDENTITY
)
private Long id;
}
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@Entity(name = "Order")
@Table(name = "order")
public class Order extends BaseEntity {
private LocalDate orderDate;
@OneToMany(mappedBy = "order", cascade = CascadeType.ALL)
private List<OrderedTicket> orderedTickets = new ArrayList<>();
private Long userId;
}
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@Entity(name = "OrderedTicket")
@Table(name = "ordered_ticket")
public class OrderedTicket extends BaseEntity {
private Integer amount;
@OneToOne
@JoinColumn(name="ticket_id")
private Ticket ticket;
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "order_id")
private Order order;
}
@Getter
@Setter
@NoArgsConstructor
@Entity(name = "Ticket")
@Table(name = "ticket")
public class Ticket extends BaseEntity {
@Enumerated(value = EnumType.STRING)
private TicketType type;
private Integer price;
private Integer totalAmmount;
private Integer inStock;
@ManyToOne(cascade = {
CascadeType.DETACH,
CascadeType.MERGE,
CascadeType.PERSIST,
CascadeType.REFRESH
})
@JoinColumn(name = "event_id")
Event event;
@Builder
public Ticket(TicketType type, Integer price, Integer totalAmmount, Integer inStock, Event event) {
this.type = type;
this.price = price;
this.totalAmmount = totalAmmount;
this.inStock = inStock;
this.event = event;
}
}
您不应该将表命名为ORDER,因为ORDER是一个保留的SQL关键字。
你可以这样做,但你总是必须在引号中附上订单。
请查看MySQL手册中所有保留的关键字:
语法中有错误;查看与服务器版本相对应的手册,以了解第1行附近使用的正确语法 当我试图为我的帐单应用程序生成帐单时,上面的错误将会出现。下面是我的应用程序的代码。请给我一些解决这个错误的方法..................
当我导入数据库时,我在PHPMyadmin中遇到了一些问题。 您的SQL语法有错误;检查与您的MySQL server版本相对应的手册,以了解在第3行“”附近使用的正确语法(`form_id`varchar(18)COLLATE utf8_general_ci;NOT NULL DEFAULT“,) 有人知道我该怎么解决吗?
问题内容: 我有一个Java代码: 然后我有SQLException: 您的SQL语法有误;检查与您的MySQL服务器版本相对应的手册,以在’?’附近使用正确的语法。 问题答案: 您应该执行不带任何参数的,如下所示: 使用参数调用将按原样执行提供的查询(没有绑定参数)。
问题内容: 我已经浏览了其他几个此类问题,但没有找到一个可以帮助我解决此问题的问题。我想做的是:我想为所有员工创建一个表,以分配将在其他多个表中使用的表。那张桌子和其他桌子工作正常。当我尝试基于该表创建新表时,就会出现我的问题,这样我就可以仅基于特定类型的员工来调出信息。在所有三个表的语句上,我得到此错误: ‘(’附近的语法不正确。期望的ID。 我一直在搜索如何解决它,但是我没有尝试过。我想念什么
我正在使用nodejs和typescript将csv数据导入到MySQL-Server。
问题内容: 我正在尝试从临时表中查询,但我不断收到此消息: 有人可以告诉我问题是什么吗?是要转换吗? 查询是 问题答案: 对于OP的命令: 我收到此错误: 当调试类似这样的东西时,请排长队,这样您将获得更好的行号: 现在导致: 这可能只是来自OP而不是将整个命令放在问题中,或者使用[]大括号来表示表名: 如果那是表名。