PRB: Передача даних з Jet 4.0LEDB джерела не вдається з помилки переповнення буфера

Переклади статей Переклади статей
Номер статті: 281517 - Показ продуктів, яких стосується ця стаття.
Розгорнути все | Згорнути все

На цій сторінці

Ознаки

Коли ви імпортуєте дані з джерела даних OLEDB Jet 4.0 за допомогою застосунок-служба перетворення даних (СПД) і постачальника Microsoft база даних OLE для струминного даних насос завдань може не з цього протокол IMAP про помилку:
"Помилка в джерело для рядка номер 9 помилок, які сталися до цих пір в це завдання: 1"
Загальна помилка:-2147217887(80040E21)
Дані для 3('Col3') вихідний стовпець є занадто великого розміру вказаного буфера.
Якщо джерело містить поля з більше ніж 255 знаків, призначення даних для цих полів може бути скорочено до 255 символів. DTS не на першому рядку, який має поле з більше ніж 255 знаків. Щоб переконатися в цьому, шукати номер рядка, який відображає протокол IMAP про помилку.

причина

постачальник послуг оренди застосунків Jet база даних OLE читає реєстру, щоб визначити, скільки рядків для читання вгадати, типу вихідний стовпець. Параметр реєстру є:

HKLM\Software\Microsoft\Jet\4.0\Engines\Excel\TypeGuessRows

За промовчанням значення цього параметра є 8. Отже постачальник послуг оренди застосунків сканує перші 8 рядків вихідних даних для визначення типів даних для стовпців. Якщо будь-яке поле виглядає як текст і довжина даних більше 255 символів, впорядкована стопка карт з чергуванням кольорів введено як поля приміток. Так що, якщо немає даних з довжиною більше за 255 знаків в перші 8 рядків джерела, Jet неможливо точно визначити природу тип даних.

Обхідний шлях

Важливі Цей розділ, спосіб або завдання містять кроки, які говорять вам, як змінити реєстр. Однак, серйозні проблеми можуть виникнути, якщо неправильна зміна реєстру. Тому переконайтеся, що ви виконаєте наступні інтерактивні елементи ретельно. Для додаткового захисту архівувати реєстру перед внесенням. Потім ви можете відновити реєстр у разі виникнення проблеми. Щоб отримати додаткові відомості про архівувати та відновлення реєстру клацніть номер статті в базі знань Microsoft Knowledge Base:
322756 Як створити архівувати та відновити реєстр у Windows

Щоб змінити значення TypeGuessRows, використовувати такі дії:
  1. У меню Пуск виберіть команду виконати. У діалоговому вікні виконати введіть Regedt32і натисніть кнопку ОК.
  2. Відкрийте такий розділ в редакторі реєстру:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel

    Примітка Для 64-розрядних системний інтегратор відповідний ключ виглядає наступним чином:

    HKLM\SOFTWARE\wow6432node\microsoft\jet\4.0\engines\excel
  3. Двічі клацніть TypeGuessRows.
  4. У діалоговому вікні редактор DWORD клацніть десятковий під бази. Введіть значення від 0 до 16, включно, для значення даних.
  5. Натисніть кнопку OKі закрийте редактор реєстру.
Другий спосіб обійти цю проблему (без внесення змін до реєстру), щоб зробити впевнені, що рядки з полями, які мають дані 255 знаків або більше, присутні в перші 8 рядків файлу джерела даних.

Додаткові відомості

Припустимий діапазон значень для ключа TypeGuessRows є 0 до 16. Однак, якщо значення — 0, кількість вихідних рядків відскановані, 16384. Майте на увазі, що нульового значення може спричинити малого продуктивність hit Якщо вихідний файл є дуже великим.

Відтворити проблему

  1. Відкриття нового книги Microsoft Excel і створити аркуш із трьох стовпців і рядків, 11 і містити перший рядок з іменами стовпців.
  2. Вставте дані у клітинки, що перші 8 рядків даних менше 255 символів у довжину.
  3. Вставити дані, що більше, ніж 255 символів в 10 і 11 рядків. Зберегти аркуш як ExcelSource.xls.
  4. Відкрити SQL Server Enterprise Manager і розгорніть ім'я сервера. Клацніть правою кнопкою миші застосунок-служба перетворення данихі натисніть кнопку Імпорт даних.
  5. Для джерела виберіть постачальника Microsoft Excel 97-2000 і надати ім'я аркуша Excel, що було збережено раніше (ExcelSource.xls).
  6. Для призначення виберіть постачальника Microsoft OLEDB для SQLа потім виберіть цільову базу даних.
  7. Натисніть кнопку копіювання таблиць і переглядів з джерела данихі натисніть кнопку Далі.
  8. У діалоговому вікні Виберіть вихідні таблиці виберіть $ Аркуш1, натисніть кнопку Даліа потім запустіть пакет відразу. Виконання пакет не з протокол IMAP про помилку, що відображається в розділі "Ознаки".

  9. Падіння таблиці Аркуш1$ від цільової бази даних за допомогою команди падіння таблиці Аркуш1$.
  10. Дотримуйтесь роздільну здатність у розділі "Обхід" і внести зміни до реєстру для TypeGuessRows.
  11. Тепер повторіть кроки 4-8. Цей Вільний час виконання пакет є успішним.

ПОСИЛАННЯ

Щоб отримати додаткові відомості про цю ситуацію, специфічні для Microsoft Excel клацніть номер статті в базі знань Microsoft Knowledge Base:
189897 XL97: Дані скорочено до 255 знаків з Excel драйвер ODBC

Властивості

Номер статті: 281517 - Востаннє переглянуто: 12 липня 2012 р. - Редакція: 2.0
Застосовується до:
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft SQL Server 2000 Standard Edition
Ключові слова: 
kbjet kbprb kbmt KB281517 KbMtuk
Машинний переклад
УВАГА! Цю статтю переклала програма машинного перекладу Microsoft, а не людина. Корпорація Microsoft пропонує вам як машинні переклади, так і переклади фахівців, щоб Ви мали доступ до всіх статей бази знань рідною мовою. Проте стаття, яку переклав комп’ютер, не завжди бездоганна. Вона може містити лексичні, синтаксичні або граматичні помилки. Так само помиляється іноземець, спілкуючись вашою рідною мовою. Корпорація Microsoft не несе відповідальність за жодні неточності, помилки або шкоду, завдану неправильним перекладом змісту або його використанням з боку користувачів. Крім того, корпорація Microsoft часто оновлює програму машинного перекладу.
Клацніть тут, щоб переглянути цю статтю англійською мовою: 281517

Надіслати відгук

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com