Update()方法不适用于ORACLE数据库

时间:2013-01-15 03:48:27

标签: java spring sql-server-2008 oracle10g jdbctemplate

我不知道为什么update()方法不适用于ORACLE数据库

deleteQuery = "delete from USBRPF where upper(userid) = upper(?)" ;

String s= "ABC " ;
getJdbcTemplate().update(deleteQuery, s.trim());

有一行USERID列有'ABC'数据('C'字符后面有一些空格)

似乎没有发现那一行。

但是,如果我将代码更改为以下代码,则可以使用

deleteQuery = "delete from USBRPF where upper(userid) like upper(?)" ;
String s= "ABC " ;
getJdbcTemplate().update(deleteQuery, s.trim() +  "%");

deleteQuery = "delete from USBRPF where upper(trim(userid)) = upper(?)" ;
String s= "ABC " ;
getJdbcTemplate().update(deleteQuery, s.trim());

注意:所有与MSSQL数据库一起使用,数据从ORACLE迁移。 我猜数据库设置有问题。可能有人想出来吗?感谢

修改:

列信息:

ORACLE

  BRANCH    CHAR(2 CHAR)          
  COMPANY   CHAR(1 CHAR)         
  DATIME    TIMESTAMP(6)          
  JOBNM CHAR(10 CHAR)          
  UNIQUE_NUMBER NUMBER(18,0)    
  USERID    CHAR(10 CHAR)         
  USRPRF    CHAR(10 CHAR)    

MSSQL

[UNIQUE_NUMBER] [bigint] IDENTITY(1,1) NOT NULL,    
[USERID] [nchar](10) NULL,  
[COMPANY] [nchar](1) NULL,  
[BRANCH] [nchar](2) NULL,   
[USRPRF] [nchar](10) NULL,  
[JOBNM] [nchar](10) NULL,   
[DATIME] [datetime2](6)> NULL,

0 个答案:

没有答案