Задача ActiveX VB Script для пакета SQL 2000 DTS - PullRequest
1 голос
/ 23 июня 2009

Я пытаюсь загрузить данные из внешнего CSV-файла, который необходимо массировать перед вставкой в ​​таблицу SQL. Чтение файла нормально, но когда я пытаюсь перебрать поток и загрузить массив с помощью функции SPLIT, я получаю ошибку «Ожидаемый конец оператора».

Do While Not txtFile.AtEndOfStream

    strText = txtFile.ReadLine

    Dim dataArray() As String = Split(strText, ",")    -- Here's where it breaks

    ...

    build sql statement to insert using the zero based array

    RS.Open strSQL, dbConn, adOpenKeyset

Loop

txtFile.Close

Я посмотрел BOL и MSDN, но все еще получаю сообщение об ошибке.

Ответы [ 2 ]

2 голосов
/ 23 июня 2009

VBScript не поддерживает типизированные переменные. VBScript не поддерживает присвоение значения в операторе Dim. Использование: -

Dim dataArray()
dataArray = Split(strText, ",")

Однако, сказав, что, поскольку это задача DTS, почему вы не создаете текстовый источник данных CSV в transfrom, а не создаете вручную код VBScript для использования CSV.

1 голос
/ 23 июня 2009

Из памяти SQL 2k DTS использует VB-скрипты, поэтому нет типов.

Dim dataArray = split(strText,",")
...