Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Błąd połączenia SSIS — nieprawidłowa nazwa pliku

Na podstawie przedstawionych informacji robisz wszystko poprawnie. Jeśli jesteś nowicjuszem w SSIS, sugeruję, że otrzymasz kopię doskonałego dodatku Pomocnik BIDS . Ma świetne funkcje, które mogą naprawdę zaoszczędzić czas, szczególnie w odniesieniu do konfiguracji i wyrażeń.

Utworzyłem pakiet referencyjny, który miał Menedżera połączeń programu Excel wskazujący na C:\ssisdata\so_paulsmithjr.xls i wszystko podłączone.

W tym momencie wiem, że wszystko działa, więc nadszedł czas, aby przenieść pakiet. Utworzyłem następujące zmienne i ich wartości

  • Bieżący plik — C:\ssisdata\so_paulsmithjr.xls
  • Miejsce — ##FILE_PATH##
  • Połączenie szablonu — Provider=Microsoft.Jet.OLEDB.4.0;Data Source=##FILE_PATH##;Extended Properties="Excel 8.0;HDR=YES";

Czwarta zmienna jest ustawiona jako wyrażenie (kliknij prawym przyciskiem myszy na zmienną, okno właściwości. Ustaw Oceń jako Wyrażenie =Prawda i Wyrażenie poniżej)

  • CurrentConnection - REPLACE(@[User::TemplateConnection], @[User::PlaceHolder], @[User::CurrentFile])

Porównałem wartość CurrentConnection z ReferenceConnection (która jest oryginalną wartością ciągu połączenia programu Excel Connection Manager) i wszystko się zgadzało. W tym momencie, gdybym miał zmienić wartość CurrentFile na C:\ssisdata\so_paulsmithjr - Copy.xls, automatycznie odzwierciedliłoby się to w wartości CurrentConnection.

Ostatnią sztuczką byłoby użycie wyrażenia w Menedżerze połączeń programu Excel. Ponownie kliknij prawym przyciskiem myszy CM i pod Właściwościami pojawią się Wyrażenia. Nie rozszerzy się, ponieważ nic pod nim nie ma. Zamiast tego kliknij wielokropek, a następnie wybierz właściwość ConnectionString i ponownie wybierz wielokropek, tym razem przeciągając w dół @[User::CurrentFile] zmienny. Kliknij OK x2 i teraz twój menedżer połączeń jest ustawiony do użycia wszędzie tam, gdzie określa zmienna CurrentConnection.

Czy to działa lepiej?




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oblicz liczbę rekordów dla każdej daty między 2 datami

  2. SQL Server i niejawna konwersja typów

  3. Instrukcja CASE IN z wieloma wartościami

  4. Zmiana mapowania źródeł danych Crystal Report

  5. SSIS upuszcza rekord podczas importu źródła plików płaskich