Thema: Delphi Lockmode bei Updates

Einzelnen Beitrag anzeigen

Robert_G
(Gast)

n/a Beiträge
 
#6

Re: Lockmode bei Updates

  Alt 4. Mär 2004, 13:49
Das wäre ein anonymer Block, der in einen Tabelle ein INSERT vornimmt und dir als Ouputvariable ein PseudoLog und die Anzahl der Fehler meldet (hier kann es ja nur max einer sein).

SQL-Code:
Declare
  RowsProcessed Number(6);
Begin
  :o_Log := Null;
  :o_ErrCount := 0;
  -- Hier beginn ein Unterblock
  Begin
    :o_Log := :o_Log || chr(10) || 'Test_Tab1 (INSERT):';
  
    Insert INTO Sheme0815.Test_Tab1 t
      (t.Text)
    VALUES
      (:i_NewText);
  
    -- da INSERTs implizierte cursor öffnen bekommst du mit...
    RowsProcessed := Sql%Rowcount;
    -- die Anzahl der Einträge die eingefügt/gelöscht/geändert wurden
    :o_Log := :o_Log || chr(10) || ' ' || RowsProcessed ||
              ' record(s) inserted...';
  
    -- Exception handling des Unterblock
  
  Exception
    When Others Then
      RowsProcessed := 0;
      :o_Log := :o_Log || chr(10) || --
                       ' ' || Replace(Sqlerrm, chr(10), chr(10) || ' ');
      :o_ErrCount := :o_ErrCount + 1;
      /* Das formatiert die Fehlermeldungen á la:
      Test_Tab1 (INSERT):
        ORA-01722: invalid number
      */

  
    -- Ende des Unterblock
  End;

  :o_Log := SubSTR(:o_Log, 2);
End;
  Mit Zitat antworten Zitat