gpt4 book ai didi

sql - Oracle 错误处理

转载 作者:行者123 更新时间:2023-12-04 22:25:10 26 4
gpt4 key购买 nike

我有这样的代码:

DECLARE
e_not_exist EXCEPTION;
PRAGMA EXCEPTION_INIT(e_not_exist, -942);
car_name VARCHAR2(20);
BEGIN
select name_of_factory into car_name from car where car_id = 1;
dbms_output.put_line(car_name);
EXCEPTION
when e_not_exist then
dbms_output.put_line('Table or view does not exist');
when OTHERS then
dbms_output.put_line(to_char(SQLCODE));
END;

实际上,我的表名是 CARS 但不是 CAR。但是 oracle 不处理这个异常并给我一个错误 ORA-00942:表或 View 不存在。
我该如何处理这个异常?

最佳答案

你不能用静态 SQL 做到这一点。代码正在编译而不是执行时会出现错误。试试这个:

 execute immediate 'select name_of_factory from car where car_id = 1' 
into car_name ;

关于sql - Oracle 错误处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4208451/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com