无法在 Spring Boot 中创建数据并将其插入到新表中

Posted

技术标签:

【中文标题】无法在 Spring Boot 中创建数据并将其插入到新表中【英文标题】:Unable to create and insert data into a new table in spring boot 【发布时间】:2020-12-03 07:18:23 【问题描述】:

当我在 Spring Boot 中尝试在我的资源 data.sql 文件中的表中创建和插入值时,我收到以下错误:

"Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Column "SWISSFRANC" not found; SQL statement:
INSERT INTO conversion_value(id,currency_from,currency_to,Conversion_factor,port) VALUES (10001,swissfranc,INR,65,0) [42122-200]"

my data.sql file contains:
INSERT INTO conversion_value(id,currency_from,currency_to,Conversion_factor,port)
VALUES (10001,swissfranc,INR,65,0);

INSERT INTO conversion_value(id,currency_from,currency_to,Conversion_factor,port)
VALUES (10002,euro,INR,75,0);

INSERT INTO conversion_value(id,currency_from,currency_to,Conversion_factor,port)
VALUES (10003,australiandollar,INR,25,0);

【问题讨论】:

这是完整的data.sql文件吗?你能分享表定义和实体吗?一个更好的方法是使用 liquibase,除非你想填充数据进行测试。 【参考方案1】:

在您插入的值周围使用引号:'euro''swissfranc' 等。 这是您的 data.sql 文件中的语法错误。 固定示例:

INSERT INTO conversion_value(id,currency_from,currency_to,Conversion_factor,port) VALUES (10001,'swissfranc','INR',65,0);

【讨论】:

以上是关于无法在 Spring Boot 中创建数据并将其插入到新表中的主要内容,如果未能解决你的问题,请参考以下文章

无法在多文档事务中创建命名空间(MongoDB 4.0、Spring Data 2.1.0、Spring Boot)

Spring Boot、MySQL、Tomcat 无法在 Eclipse 中创建池的初始连接

Docker:无法连接 Spring Boot 和 MYSQL

在 Spring Boot 中创建数据源时出错

Hibernate 不使用 Spring boot 在 PostgreSql 中创建数据库

尝试使用 intellij Datagrip 连接到在 Spring Boot 包中创建的数据库