Java 关键字';键';
我正在尝试将新对象持久化到数据库中,但出现以下错误: SQL错误:156,SQLState:S0001 关键字“key”附近的语法不正确 我在做什么Java 关键字';键';,java,spring-boot,jpa,Java,Spring Boot,Jpa,我正在尝试将新对象持久化到数据库中,但出现以下错误: SQL错误:156,SQLState:S0001 关键字“key”附近的语法不正确 我在做什么 Bucket bucket = new Bucket(); bucket.setKey(key); bucket.setValue(value); entityManager.persist(bucket); 我相信这个错误是由于sql语句中使用了关键字“key”导致的。是否有本机查询可用于将行插入表中 我的表有这三列,Id是自动生成的 桶
Bucket bucket = new Bucket();
bucket.setKey(key);
bucket.setValue(value);
entityManager.persist(bucket);
我相信这个错误是由于sql语句中使用了关键字“key”导致的。是否有本机查询可用于将行插入表中
我的表有这三列,Id是自动生成的
桶:
@Entity
@Getter
@Setter
@ToString
public class Bucket {
@Id @GeneratedValue(strategy= GenerationType.IDENTITY)
private long id; //auto allocation of PK
private String key;
private String value;
}
@Entity
@Getter
@Setter
@ToString
public class Bucket {
@Id @GeneratedValue(strategy= GenerationType.IDENTITY)
private long id; //auto allocation of PK
@Column(name = "\"key\"")
private String key;
@Column(name = "\"value\"")
private String value;
}
谢谢马丁·史密斯的帮助。只要一个简单的改变,问题就解决了 桶:
@Entity
@Getter
@Setter
@ToString
public class Bucket {
@Id @GeneratedValue(strategy= GenerationType.IDENTITY)
private long id; //auto allocation of PK
private String key;
private String value;
}
@Entity
@Getter
@Setter
@ToString
public class Bucket {
@Id @GeneratedValue(strategy= GenerationType.IDENTITY)
private long id; //auto allocation of PK
@Column(name = "\"key\"")
private String key;
@Column(name = "\"value\"")
private String value;
}
谢谢马丁·史密斯的帮助。只要一个简单的改变,问题就解决了 桶:
@Entity
@Getter
@Setter
@ToString
public class Bucket {
@Id @GeneratedValue(strategy= GenerationType.IDENTITY)
private long id; //auto allocation of PK
private String key;
private String value;
}
@Entity
@Getter
@Setter
@ToString
public class Bucket {
@Id @GeneratedValue(strategy= GenerationType.IDENTITY)
private long id; //auto allocation of PK
@Column(name = "\"key\"")
private String key;
@Column(name = "\"value\"")
private String value;
}
变量名可能是导致问题的原因。你在使用哪个数据库?我在使用MSSQL。我将尝试转义关键字。变量名可能是导致问题的原因。你在使用哪个数据库?我在使用MSSQL。我将尝试避开关键字。