Когда я устанавливаю TargetServerVersion = SqlServer2012 в моем проекте SSIS, мой компонент скрипта выдает исключение из нулевого объекта.SSIS TargetServerVersion вызывает пустые строки в компоненте скрипта
Я импортирую около 140 000 записей из файла CSV. Чтобы подтвердить, что у меня есть записи, я удалил свой компонент компонента скрипта и запускал поток без проблем.
Затем я добавил обратно в компоненте сценария (который работал хорошо с этим самим файлом данных), и я получаю нулевое исключение.
Когда я отлаживать скрипт и проверить значение свойства Row он говорит следующее: то
?Row
{Input0Buffer}
Buffer: {Microsoft.SqlServer.Dts.Pipeline.PipelineBuffer}
BufferColumnIndexes: {int[2]}
MembershipPlanName: 'Row.MembershipPlanName' threw an exception of type 'System.NullReferenceException'
MembershipPlanName_IsNull: 'Row.MembershipPlanName_IsNull' threw an exception of type 'System.NullReferenceException'
Сценарий терпит неудачу, когда остальные строки пытаются ссылаться на строку. Когда я меняю TargetServerVersion на 2016 или 2014 год, пакет работает нормально.
Во время debegging я также посмотрел на BufferWrapper.cs и там, кажется, некоторые данные там
?Buffer
{Microsoft.SqlServer.Dts.Pipeline.PipelineBuffer}
ColumnCount: 2
ColumnInfo: 0x0000000000000000
CurrentRow: 0
EndOfRowset: false
Mode: Input
RowCount: 9936
RowSize: 260145280
RowStarts: 0x000000000f82b700