Mam plik tekstowy z pionowymi wartościami pionowymi paska {|} i używam źródła pliku płaskiego do odczytania wartości, które nie powiedzie się z powyższym błędem.SSIS - Tekst został obcięty lub jeden lub więcej znaków nie pasowało do docelowej strony kodowej - Znaki specjalne
Mam program Menedżer połączeń płaskich, w którym ustawiam szerokość kolumny każdej kolumny. Szczególna kolumna, która powoduje błąd
dataType - DT_WSTR
OutputColumnWidth - 30
Problemem jest podnoszona tylko wtedy, gdy dana kolumna zawiera znaki specjalne, takie jak 'Société Amomyna da Pramt Hgyme' chociaż wciąż ma tylko 30 znaków.
Jeśli zwiększę szerokość kolumny, to działa, ale muszę wiedzieć, że to właściwe rozwiązanie.
Proszę dać mi znać, jeśli potrzebujesz więcej informacji. Dzięki z góry
Dzięki, więc zwiększył „OutputColumnWidth” do 40 z 30, ale w trakcie ADO NET fazy Destination nie powiedzie się z powodu błędu „Podana wartość typu String z źródło danych nie może zostać przekonwertowane na typ nvarchar podanej kolumny docelowej "tak to oznacza, że szerokość kolumny w tabeli bazy danych również musi zostać zwiększona? – Swamy
Może to być problem z kodowaniem, a nie z rozmiarem. Kolumna NVARCHAR bazy danych powinna obsługiwać ciągi znaków Unicode, ale może być konieczne skonfigurowanie zadania ADO, aby je obsłużyć. – TsSkTo
Tak, zmieniłem otoczenie na UTF-8 i wszystkie problemy zostały rozwiązane. Nie muszę nawet zwiększać OutputColumnWidth. To mi też pomogło "http://www.joelonsoftware.com/articles/Unicode.html" – Swamy