如何解决无法使用 r2dbc非 spring在 MSSQL 中插入数据
我是 r2dbc 的新手。我正在尝试使用带有反应器的 R2DBC(非 Spring 项目)连接到 MSSQL DB。它没有建立连接,也没有将数据插入表中。我也试过给出错误的表名,但也不例外。
public Flux<MssqlResult> writetoDB() {
return createDBConnection().create()
.flatMapMany(c -> c.createStatement("INSERT INTO person (id,first_name,last_name) VALUES(@id,@firstname,@lastname)")
.bind("id",1)
.bind("firstname","Walter")
.bind("lastname","White")
.execute()
.doFinally((st) -> c.close()))
.log();
}
private MssqlConnectionFactory createDBConnection() {
MssqlConnectionConfiguration configuration = MssqlConnectionConfiguration.builder()
.host("sample-host").username("testuser")
.password("testuser1").database("testDB").preferCursoredExecution(true).build();
MssqlConnectionFactory factory = new MssqlConnectionFactory(configuration);
return factory;
}
请建议我在这里缺少什么。
解决方法
向上述问题添加更多代码,我也面临类似问题
@Test
public void test2() throws IOException {
writetoDB().subscribe(s -> System.out.println("successfully executed"),e -> e.printStackTrace());
}
private Flux<MssqlResult> writetoDB() {
MssqlConnectionConfiguration configuration = MssqlConnectionConfiguration.builder().host("localhost")
.username("sa").password("ChangePwd@12").database("master").preferCursoredExecution(true).build();
MssqlConnectionFactory factory = new MssqlConnectionFactory(configuration);
Mono<MssqlConnection> connectionMono = factory.create().log();
return connectionMono.log().flatMapMany(con -> con
.createStatement("INSERT INTO person (id,first_name,last_name) VALUES(@id,@firstname,@lastname)")
.bind("id",1).bind("firstname","Walter").bind("lastname","White").execute()).log();
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。