Mr.P Asked: 2017-08-16 18:20:16 +0800 CST2017-08-16 18:20:16 +0800 CST 2017-08-16 18:20:16 +0800 CST 如何删除小写名称 ORACLE (=> ORA-27475 ) 的作业 772 如何在 Oracle 中删除具有小写名称的工作? 它给了我一个错误 ORA-27475 "JOB_NAME" must be a job BEGIN DBMS_SCHEDULER.stop_job(job_name => 'MY_JOB_name'); END; / 这项工作肯定存在..你知道如何规避这个问题吗? 谢谢 oracle jobs 1 个回答 Voted Best Answer Balazs Papp 2017-08-16T23:32:49+08:002017-08-16T23:32:49+08:00 当您需要使用区分大小写的标识符时,您需要将它们放在双引号之间,否则数据库将它们视为不区分大小写并自动转换为大写。 begin dbms_scheduler.create_job ( job_name => '"job1"', job_type => 'plsql_block', job_action => 'begin null; end;' ); end; / select job_name from dba_scheduler_jobs where job_name = 'job1'; JOB_NAME ------------------------------ job1 这失败了: begin dbms_scheduler.drop_job('job1'); end; / Error report - ORA-27475: "BP.JOB1" must be a job ... 但这有效: begin dbms_scheduler.drop_job('"job1"'); end; / PL/SQL procedure successfully completed.
当您需要使用区分大小写的标识符时,您需要将它们放在双引号之间,否则数据库将它们视为不区分大小写并自动转换为大写。
这失败了:
但这有效: