2010-03-03 2 views
3
 
         (Flat File Location) 
        Samba Share | Windows Share 
(SSIS)   _______________________________ 
       |    | 
XP 32bit  | Works  | Works 
       |    | 
2003 Serv 32bit | Works  | Works 
       |    | 
Vista 64bit  | ERROR  | Works 
       |    | 
Win 7 64bit  | ERROR  | Works 
       |    | 
2008 Serv 64bit | ERROR  | Works 

Я создал пакет SSIS в VS 2008, который анализирует плоский файл из общей папки и помещает записи в SQL Server дб.Flat File Manager Connection в пакете SSIS показывает «Действительное Имя файла должно быть выбрано»

Недавно я установил Windows 7 и VS 2008 на новую рабочую станцию. Когда я импортировать пакет из TFS и открыть его, я получаю ошибку

Validation error. Parse and Import Catalog Flat File: MySSISPackage: The file name "\\shared\flatfile.txt" specified in the connection was not valid.

Когда я открываю Плоский редактор файлов диспетчера подключений, есть ошибка с указанием:

A valid file name must be selected

Я могу просматривать к и выберите файл внутри редактора, но я не могу изменить какие-либо свойства или перейти от вкладки «Общие» из-за этой ошибки.

Если я вернусь на свой ноутбук (Windows XP), где пакет был сначала создан, ошибок нет. Обе рабочие станции находятся в одном домене, и я регистрируюсь с использованием тех же учетных данных.

Любые идеи относительно того, почему я получаю эту ошибку с одной рабочей станции, а не с другой?


UPDATE: Если я беру .dtsx пакет из текущей рабочей станции и загрузить его в SSIS на сервере, я получаю следующие ошибки при попытке запуска:

Error: The file name "\\shared\flatfile.txt" specified in the connection was not valid.

и ...

Error: Connection "MySSISPackage" failed validation.

и ...

Error: The file name property is not valid. The file name is a device or contains invalid characters.


UPDATE 2:

а) Общая папка Я пытаюсь вытащить плоский файл из является доля Samba на коробке Unix.

b) Если я получаю доступ к файлу с помощью SSIS на любой 64-разрядной платформе (Windows 7 64-разрядная, Vista 64-bit, Windows Server 2008), я получаю сообщение об ошибке «Должно быть выбрано допустимое имя файла».

c) Доступ к файлу с использованием SSIS из 32-разрядных сред (32-разрядная 32-разрядная версия Windows XP, 32-разрядная версия Windows Server 2003).

d) Если я переведу файл в общую папку на сервере Windows, 64-разрядный SSIS распознает файл.

ответ

1

У меня была аналогичная проблема. То, что я сделал, было в обозревателе решений I, щелкнув правой кнопкой мыши на имени проекта и выбранных свойствах. Затем я нажал кнопку «Отладка» и установил свойство Run64BitRuntime = «False». Файл Excel 32-разрядный, поэтому запуск SSIS в качестве 64-битного приложения не будет работать в этом сценарии.

1

Вы загружаете его в SQL Server на рабочей станции или являетесь центральным сервером?

Если на рабочей станции SQL Server работает под одной учетной записью на обеих машинах? Возможно, служба SQL на новом компьютере работает под другой учетной записью и, следовательно, не имеет доступа к файлу.

+0

На самом деле, я получаю, чтобы «правильное имя файла должно быть выбрано» при создании диспетчера соединений с плоскими файлами в Visual Studio. В этот момент он не попал в SQL Server. Я также получаю другие ошибки (обновленные выше) при попытке загрузить тот же пакет, скомпилированный на другой рабочей станции, в SQL Server. – Feckmore

6

У нас была такая же проблема. После некоторого поиска мы обнаружили, что используемая учетная запись имела доступ к суб-директору, но не к ресурсу.Похоже, что ваша учетная запись должна иметь доступ, унаследованный от более высокой директории.

например: \\ сервер \ папка \ Foder \ subfold1 \ subfold2 \ file.csv < == нам нужен доступ здесь Вход в помещение для "subfold2" не передается по наследству, а учетная запись не имеет доступа к \\ сервер \ share \

Итак, мы дали доступ к \\ серверу \ share \ и устранили проблему.

1

Это звучит как проблема с подключением к ресурсу CIFS.

В Windows 7 & Server 2008 существует несколько настроек, которые мы должны были изменить, чтобы позволить учетной записи службы SSIS подключаться к ресурсу CIFS в нашей среде. Я бы попробовал каждый из этих 1 шаг за раз, поскольку есть ситуации, когда все шаги не требуются.

Шаг 1: Администрирование -> Локальная политика безопасности -> Параметры безопасности -> Локальные политики -> Параметры безопасности -> Сетевая безопасность: LAN Manager Authentication Level Изменить это значение: Отправить LM и NTLM -use NTLM2 сессии безопасности при согласовании

Шаг 2: Отключить IP v.6

Шаг 3: Force TCP/IP через NetBios.

2

Я нашел решение, просто изменив путь к файлу, чтобы он мог переварить лучше, - именованный диск работал. Пример: Текстовый файл был на \ server \ filepath \ filename.txt ОШИБКА Я скопировал файл в папку c: \ filepath \ filename.txt , и он отлично работал.

2

Здесь есть еще одна возможность, и решение, которое сработало для меня по той же проблеме, состояло в том, чтобы щелкнуть правой кнопкой мыши диспетчер соединений и выбрать DelayValidation = True вместо значения по умолчанию false. Моей болью было использование конфигураций SSIS, чтобы указать, где находился файл, и BIDS не понравился путь к файлу сетевого общего доступа.

1

У меня возникла проблема с ядром SQL 2008 R2 с пакетом SSIS в задании, доступ к которому можно получить на общем ресурсе Windows 2008. Предоставление доступа к общей папке и конкретной папке не помогло. Я постоянно получаю сообщение об ошибке:

The file name property is not valid. The file name is a device or contains invalid characters.

Потратив слишком много времени устранения неполадок, я обнаружил, что перезапуск агента SQL Server исправила проблему.

Смежные вопросы