so_damn_insane ([info]so_damn_insane) rakstīja,
@ 2008-07-30 18:26:00

Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Entry tags:ora

orawtf
Pusi dienas cīnījos pret ORA-01722: invalid number

Rezultāti zemāk.



Neliels tests:

create table test (id number, val varchar2(1));

insert into test values (1, 'a');

declare
v_val number := 0;
v_id number;
begin
select id
into v_id
from test
where val = v_val;
end ;
/

Mulsumu rada fakts, ka šāda funkcionalitāte tajā vietā strādā jau kopš sistēmas dzimšanas un nekas tajā apgabalā nav aiztikts (to es zinu, jo vienīgais tur kaut ko aiztieku).
Beigās izrādījās, ka ir saplīsis select no v$session.
Tipa, normāls veids, kā noskaidrot, kuras sesijas ņemas ar to pašu.

select count(1)
into v_count
from v$session
where client_identifier = :my_number;

Bija viena sesija, kurai tur bija 'ANONYMOUS'.
Turklāt, to vērtību normāli uzstāda tikai ar DBMS_SESSION.SET_IDENTIFIER();
Kāds izrādījās tsuka. Turklāt pieslēdzies ar osuser = 'oracle'.



(Ierakstīt jaunu komentāru)

Neesi iežurnalējies. Iežurnalēties?