Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Das SSIS-Paket gibt nach der Bereitstellung von SQL Server 2012 einen Fehler aus

Dies ist nicht notwendigerweise eine Antwort darauf, wie Sie das Problem beheben können, aber es ist eine Antwort darauf, wie Sie Ihre Skriptaufgabe ändern können, um eine bessere Fehlermeldung zu erhalten als „Fehler bei der Skriptaufgabe:Ausnahme wurde ausgelöst...“

Wir packen unsere Skriptaufgaben immer in einen try-catch und lösen dann die Ausnahmemeldung wieder aus der Skriptaufgabe aus:

    public void Main()
    {
        try
        {

            //Your code here

            Dts.TaskResult = (int)ScriptResults.Success;
        }
        catch (Exception ex)
        {
            Dts.Events.FireError(-1, "", ex.Message, String.Empty, 0);
            Dts.TaskResult = (int)ScriptResults.Failure;
        }
    }

Es ist immer eine Herausforderung, insbesondere bei einem bereitgestellten SSIS-Paket, wenn es bei einer Skriptaufgabe fehlschlägt, erhalten Sie nicht unbedingt einen klaren Hinweis darauf, warum es fehlschlägt, und Sie erhalten eine kryptische Fehlermeldung. Der obige Code wird erfassen, was die Ausnahme ausgelöst hat, und an die Integrationsdienste zurückgeben, was das war.