in

UGISS Community

Il sito della community dello User Group Italiano di SQL Server

problemi sul Redirect Row

Last post 06-29-2007 14.33 by dmauri. 1 replies.
Page 1 of 1 (2 items)
Sort Posts: Previous Next
  • 06-29-2007 10.37

    problemi sul Redirect Row

    salve,

     

    sto usando in un dataflow il controllo ole db destination per immettere dati provenienti da un foglio excel dopo aver fatto una minima validazione sul campo se null o meno con un conditional split.

    Ma un foglio contiene per un errato input una stringa dove dovrebbe trovare una data, il controllo fallisce, vorrei mandare questo record errato in una altra tabella gestendo il redirect row. Mi dà invece questo msg

    The error row disposition on input OleDB Destination Input (3995) cannot be set  to redirect ...

    L'altra soluzione che posso implementare è mettere in cascata un altro conditional che gestisca nel modo più completo la situazione anomala.

    comunque vorrei capire perchè non è possibile fare nel primo modo.

     

     

    grazie e arrivederci

    Angela D'Introno 

    • Post Points: 20
  • 06-29-2007 14.33 In reply to

    • dmauri
    • Top 10 Contributor
      Male
    • Joined on 05-14-2007
    • Novate Milanese
    • Posts 1.182
    • Points 15.485

    Re: problemi sul Redirect Row

    angeladin:

    The error row disposition on input OleDB Destination Input (3995) cannot be set  to redirect ...

    Stai sicuramente usando la modalità "Fast Load", vero?

    angeladin:

    L'altra soluzione che posso implementare è mettere in cascata un altro conditional che gestisca nel modo più completo la situazione anomala.

     

    Esatto, questa è la soluzione migliore.

    angeladin:

    comunque vorrei capire perchè non è possibile fare nel primo modo.

    Il motivo è legato all'utilizzo delle funzionalità di BULK INSERT, che vengono attivate quanto si utilizza l'opzione FAST LOAD. Questa funzione ti permette di caricare le righe nella destinazone in modo molto molto veloce in quanto vengono fatti degli inserimenti massivi, ma non ti permette di gestire riga per riga. Per fare quest'utlima cosa non devi usare il FAST LOAD, il che significa che i SSIS eseguono una INSERT per ogni riga da inserire nella destinazione, e che le prestazioni in questo caso sono davvero pessime.

    Molto meglio usare quindi FAST LOAD con a monte un bel Conditional Split

    Davide Mauri
    Microsoft MVP - SQL Server, MCP, MCAD, MCDBA, MCT - http://www.davidemauri.it
    Socio Fondatore e Mentor di Solid Quality Learning Italy - http://www.solidq.com
    Presidente di UGISS: User Group Italiano Sql Server - http://www.ugiss.org
    Filed under:
    • Post Points: 5
Page 1 of 1 (2 items)
(C) 2007 User Group Italiano di SQL Server