update() メソッドが ORACLE データベースで機能しない理由がわかりません
deleteQuery = "delete from USBRPF where upper(userid) = upper(?)" ; String s= "ABC " ; getJdbcTemplate().update(deleteQuery, s.trim());
データ「ABC」を持つ列USERIDの行があります(「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());
注: ORACLE から移行されたデータを使用して、すべて MSSQL データベースで動作します。データベースの設定に問題があると思います。誰かにそれを理解してもらうことはできますか?ありがとう
変更:
列情報:
オラクル
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,