Index: ssts-web/src/main/webapp/dataUpdater/sqls/5.0.18_5.0.19_oracle.sql =================================================================== diff -u -r37701 -r37703 --- ssts-web/src/main/webapp/dataUpdater/sqls/5.0.18_5.0.19_oracle.sql (.../5.0.18_5.0.19_oracle.sql) (revision 37701) +++ ssts-web/src/main/webapp/dataUpdater/sqls/5.0.18_5.0.19_oracle.sql (.../5.0.18_5.0.19_oracle.sql) (revision 37703) @@ -1,10 +1,14 @@ +DECLARE + v_column_exists NUMBER; BEGIN - EXECUTE IMMEDIATE 'ALTER TABLE IDCardInstance DROP COLUMN lastClassifiedItemIds'; -EXCEPTION - WHEN OTHERS THEN - IF SQLCODE = -2289 THEN - DBMS_OUTPUT.PUT_LINE('Column lastClassifiedItemIds does not exist in table IDCardInstance. No action taken.'); - ELSE - RAISE; - END IF; + -- 检查字段 lastClassifiedItemIds 是否存在于 IDCardInstance 表中 + SELECT COUNT(*) + INTO v_column_exists + FROM USER_TAB_COLUMNS -- 或者 ALL_TAB_COLUMNS, DBA_TAB_COLUMNS,取决于你的权限和需要 + WHERE TABLE_NAME = 'IDCardInstance' + AND COLUMN_NAME = 'lastClassifiedItemIds'; + -- 如果字段存在,则删除它 + IF v_column_exists > 0 THEN + EXECUTE IMMEDIATE 'ALTER TABLE IDCardInstance DROP COLUMN lastClassifiedItemIds'; + END IF; END; \ No newline at end of file