我试图在我的spring应用程序中运行以下测试.
@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(classes=App1Application.class)
@Sql(scripts="customerTest.sql")
@DirtiesContext(classMode=ClassMode.AFTER_EACH_TEST_METHOD)
public class customerTest {
@Autowired
customerRepository customerDB;
@Test
public void countRecords(){
assertThat(customerDB.count(),is(2l));
}
}
Run Code Online (Sandbox Code Playgroud)
在customerTest.sql文件中我有:
insert into customer(id,name,lastname) values(1,"name","lastname");
Run Code Online (Sandbox Code Playgroud)
这是我的客户类
@Entity
@Data
public class customer {
@Id
@GeneratedValue
int id;
String name;
String lastname;
}
Run Code Online (Sandbox Code Playgroud)
我也用jpa:
public interface customerRepository extends JpaRepository<customer,Long>{
}
Run Code Online (Sandbox Code Playgroud)
问题是,当我运行测试时,我面临错误:
org.h2.jdbc.JdbcSQLException: Column "Salman" not found; SQL statement:
insert into customer(id,name,lastname) values(1,"name","lastname")
Run Code Online (Sandbox Code Playgroud)
同时"萨尔曼"是一个价值而不是一个列?
请注意,我使用spring-mvc所以没有数据库
我只有我的模型(customer)由代码制作.
Sal*_*ara 19
对于我来说,讽刺者做出这样一个错误的行为仍然是一个问题,但我设法使用这个''而不是双引号来处理这个错误""
我用这个
insert into customer(id,name,lastname) values(1,'name','Lastname')
Run Code Online (Sandbox Code Playgroud)
而不是
insert into customer(id,name,lastname) values(1,"name","Lastname")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10021 次 |
| 最近记录: |