我有一個Oracle錯誤(ORA-01008):事情是這個錯誤第一次出現,沒有修改table/Schema(但是有數據庫升級)。 我試過立即執行,但我仍然得到相同的錯誤。ORA-01008:數據庫升級後並非所有變量綁定
SET serveroutput ON;
set define off;
--alter session set "_subquery_pruning_enabled"=false;
DECLARE
z_value NUMBER := -1;
CURSOR listedocument
IS
select to_number(2310458) as coco from dual;
BEGIN
FOR l IN listedocument
LOOP
BEGIN
dbms_output.put_line (' l.coco= ' || l.coco);
SELECT oa.myvalue
INTO z_value
FROM schema2.table2 oa
INNER JOIN
schema1.table1 ed
ON ed.coco = oa.coco
WHERE ed.coco = l.coco
;
EXCEPTION
WHEN NO_DATA_FOUND THEN
dbms_output.put_line ('NO_DATA_FOUND');
WHEN OTHERS THEN
dbms_output.put_line ('Exception de traitement ' || SQLERRM);
END;
END LOOP;
END;
這個問題似乎在這裏WHERE ed.coco = l.coco
我得到的錯誤:異常去TRAITEMENT ORA-01008:未綁定 [==>後修改的消息]
我所有變量得到的錯誤:ORA-01008:並非所有的變量綁定
當我使用alter session set "_subquery_pruning_enabled"=false;
一切wor ks,但表現糟糕。
我正在使用Oracle數據庫11g(11.2.0.4.0)。
解決我假設你在談論「ORA-01008:未綁定的所有變量」。請不要通過將法語翻譯成英語來發明新的錯誤信息 - 將ORA-01008放入您最喜愛的搜索引擎中將返回正確的英文字詞。另外,我會對你有什麼想法使用非文件化的'_subquery_pruning_enabled'參數感興趣 - 這是從Metalink中獲取的嗎? –
我不能看到在這種情況下使用任何綁定變量。 –
你可以嘗試禁用動態採樣並嘗試。我認爲這可能會有所幫助。 alter session set optimizer_dynamic_sampling = 0 –