有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java SimpleJdbcInsert未在默认模式的表中插入数据

我正在努力编写一个使用Spring的SimpleJdbcInsert的代码

SimpleJdbcInsert jdbcInsert = (new SimpleJdbcInsert(transactionManager.getDataSource())
                .withTableName(MY_TABLE).usingGeneratedKeyColumns("my_table_id")).usingColumns(MY_COLUMNS);

当我在一个默认模式为“PUBLIC”的连接上使用它时,它可以很好地工作,比如在我没有设置任何模式的连接上。然而,当我添加一些模式,然后将我的_SCHEMA1作为连接的默认模式时,这就不再有效了。它根本找不到我的桌子

如果我加上。使用Schemaname(我的_SCHEMA1)到SimpleJdbcInsert。然而,我没有这个选择

请帮忙

注意:我在H2和DB2上使用这个


共 (1) 个答案

  1. # 1 楼答案

    据我所知,每当一个数据库被划分为多个模式时,都必须具体指定所指向的模式(不管默认模式是什么)。我认为,这就是为什么当你使用add时它工作得很好的原因。使用方案名称(我的方案1)。 但是,正如您所提到的,您没有这个选项,您可以在其他地方指定模式名称,比如在应用程序的属性文件服务器配置文件中