vrijdag 4 september 2009

SSIS Truncation Warning (die niet nodig is)

Ik heb een SSIS package voor het verzamelen van gegevens van SQL2000 instances in het netwerk informatie tbv een migratie inventarisatie naar SQL 2008.

Een van de stappen is een DFT met een OLE_SRC query:

SELECT CONVERT(nchar(1),SERVERPROPERTY('ISCLUSTERED)) AS 'IsClusterd'
en een paar andere properties die voor de uitleg niet van belang zijn


De SS_DST tabel bevat een nchar(1) kolom voor het opslaan van deze property. SSIS blijft echter een warning geven:

ServerInfo_BaseInfo [37]: Truncation may occur due to inserting data from data flow column "IsClustered" with a length of 255 to database column "IsClustered" with a length of 1.

Waarom? Het veld is toch echt 1 lang. Ik zou een DCNV kunnen toevoegen om het veld echt op 1 lengte te zetten, dit helpt maar waarom gaat het fout?

Waarschijnlijk heb ik een later stadium pas the convert(nchar(1) toegevoegd), helaas wordt de SQL meta data voor de output columns niet bijgewerkt in de OLE_SRC.

Oplossing:

Ga naar Advanced edit mode van de OLE_SRC query


Deze eerste External Columns staat reeds goed dus dit is niet de oorzaak.















De Output columns dan maar even nakijken:


En daar is het issue, de length staat nog op 255, even aanpassen en de truncate errors zijn verdwenen.





Geen opmerkingen: