INSERT und UPDATE einen Datensatz mit Cursorn in Oracle

Ich habe 2 tischestudent undstudLoad beide mit 2 FeldernstudID undstudName. Ich möchte Daten von ladenstudent Tisch instuLoad Tabelle. Wenn die Daten bereits im vorliegenstudLoad Tabelle, dann sollte es aktualisiert werden, sonst sollte es eingefügt werden. Folgendes ist mein Code, um dies zu tun:

    create or replace procedure studentLoad is
v_id student.studID%type;
v_name student.studName%type;
v_sn studLoad.studName%type;
cursor cur_load is
select * from student;


begin
  open cur_load;
  loop
   fetch cur_load into v_id,v_name;

   exit when cur_load%notfound;
   select studName into v_sn from studLoad where studID = v_id;
   if(v_sn!= v_name) then
      update studLoad set studName= v_name where studID= v_id;
   else
      insert into studLoad values(v_id,v_name);
   dbms_output.put_line(v_id || ' ' || v_name);
   end if;
  end loop;
      close cur_load;
end;

Es funktioniert nicht. Die Zeilen in der StudLoad-Tabelle werden NICHT aktualisiert. Wie löse ich das? In SQL Server verwenden wirIF EXISTS(select...from stuLoad..) Gibt es eine Möglichkeit, um zu überprüfen, ob der Datensatz in der Tabelle vorhanden ist, dasselbe in Oracle zu tun? wenn ja dann lass es mich bitte gleich wissen.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage