我现在正在使用oracle和spring jdbc,但我不想在我的sql语句中使用该模式:
示例:从SCHEMA.table中选择*
有没有办法在application.properties或application.yml中设置默认架构?
我正在尝试执行此插入:
@Insert("" +
"insert into EXTRANET.EX_ENTIDAD (ENT_REFNUM, ENT_TIPO, REG_PUB_ID, OFIC_REG_ID, AREA_REG_ID, " +
"COD_LIBRO, NUM_PARTIDA, ANO_TITU, NUM_TITU, ENT_TRIGGER, TMSTMP_CREA, PRIORIDAD) " +
" values (EXTRANET.EX_ENTIDAD_SEQ.nextval, #{entTipo}, " +
"#{regPubId}, #{oficRegId}, #{areaRegId}, #{codLibro}, #{numPartida}, #{anoTitu}, " +
" #{numTitu}, 'SYNC', SYSDATE, #{prioridad})")
public int insertEntidades(Map map);
Run Code Online (Sandbox Code Playgroud)
但是如果某些 #{param} 是 NULL 我得到它错误:
引起:org.apache.ibatis.type.TypeException: Error setting null for parameter #1 with JdbcType NULL 。尝试为此参数设置不同的 JdbcType 或不同的 jdbcTypeForNull
我正在搜索一些解决方案并阅读我必须配置一个属性:jdbcTypeForNull
然后我在 Spring 中更新我的配置:
@Bean
public SqlSessionFactoryBean sqlSessionFactory() throws Exception,Throwable {
SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean(); …Run Code Online (Sandbox Code Playgroud)