无法使用java更新oracle数据库中的数据
问题描述:
我正尝试使用此代码从我的oracle数据库更新数据。 该程序没有错误,但它显示ORA-00933: SQL command not properly ended
。
任何人都可以让我知道这是什么意思,我该如何纠正它?无法使用java更新oracle数据库中的数据
String gdta="
UPDATE CLIENT_DATA SET CLIENT_ADDRESS4 = 'SELANGOR'
WHERE CLIENT_ADDRESS4 = 68100 BATU CAVES SELANGOR D.E.
UNION
UPDATE CLIENT_DATA SET CLIENT_ADDRESS4 = 'SELANGOR'
WHERE CLIENT_ADDRESS4 = 47100 PUCHONG,SELANGORUNION
UPDATE CLIENT_DATA SET CLIENT_ADDRESS4 = 'SELANGOR'
WHERE CLIENT_ADDRESS4 = 47100 PUCHONG";
答
您不能在union语句中组合更新语句。此外,它看起来像你需要引用client_address4值。
尝试在SQL客户端中运行SQL命令之前,尝试它在java中,看看它是否工作。
我认为你需要执行多个语句,而不是单一的一个,比如这个:
String gdta="UPDATE CLIENT_DATA SET CLIENT_ADDRESS4 = 'SELANGOR' WHERE CLIENT_ADDRESS4 = '68100 BATU CAVES SELANGOR D.E.'";
String gdta2="UPDATE CLIENT_DATA SET CLIENT_ADDRESS4 = 'SELANGOR' WHERE CLIENT_ADDRESS4 = '47100 PUCHONG,SELANGOR'";
String gdta3="UPDATE CLIENT_DATA SET CLIENT_ADDRESS4 = 'SELANGOR' WHERE CLIENT_ADDRESS4 = '47100 PUCHONG'";
,或者使用一个单独的语句与在子句:
String gdta="UPDATE CLIENT_DATA SET CLIENT_ADDRESS4 = 'SELANGOR' WHERE CLIENT_ADDRESS4 in ('68100 BATU CAVES SELANGOR D.E.', '47100 PUCHONG,SELANGOR', '47100 PUCHONG')";
+0
TQ这么多...我已经尝试过它,它的工作原理...真的很感激它! – tqa 2011-12-21 09:47:03
我格式化代码使问题可见,当然这不会编译。 – oers 2011-12-21 09:25:53
TQ格式化代码...更易读... – tqa 2011-12-21 09:54:29