Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 SSIS. Источник EXCEL  [new]
Yagrus2
Member

Откуда: Москва
Сообщений: 895
Здравствуйте.
Пытаюсь создать пакет, который закачивает данные из EXCEL-файла в таблицу на SQL-server. Использую для этого VisualStudio2012.
Пытаюсь сделать настройку EXCEL Source. Выбираю созданный мной EXCEL Connection Manager, в котором указан нужный мне файл. Но при попытке выбора листа в "Name of the Excel sheet" получаю ошибку:
------------------------------

Could not retrieve the table information for the connection manager 'Excel Connection Manager'.
Failed to connect to the source using the connection manager 'Excel Connection Manager'

------------------------------


Порывшись на форумах нашел такой ответ

Visual Studio 2010/2012 comes with 32-bit version only and hence it cannot use ACE OLEDB 64-bit version, which comes with installation of office 2010 64-bit version.

So the solution here would be uninstall 64-bit version office 2010 and install it's 32-bit version. Re-try to add the excel connection manager.

This has resolved my issue and hope for other guys as well.


К сожалению у меня нет возможности.

Пересохранил файл в версии 97-2003. Файл удачно распознаётся.

Подскажите есть ли еще какой способ побороть 64-х битный excel?
13 мар 14, 15:56    [15718497]     Ответить | Цитировать Сообщить модератору
 Re: SSIS. Источник EXCEL  [new]
Mismeric
Member

Откуда:
Сообщений: 25
Yagrus2,
попробуй установить вот это на сервер.
http://www.microsoft.com/en-us/download/details.aspx?id=23734
13 мар 14, 16:23    [15718752]     Ответить | Цитировать Сообщить модератору
 Re: SSIS. Источник EXCEL  [new]
Дедушка Ау
Guest
Yagrus2,

Мне вот это помогло: AccessDatabaseEngine_x64. Точной ссылки не помню.
13 мар 14, 16:26    [15718775]     Ответить | Цитировать Сообщить модератору
 Re: SSIS. Источник EXCEL  [new]
Yagrus2
Member

Откуда: Москва
Сообщений: 895
Дедушка Ау,
Установка AccessDatabaseEngine_x64 не помогла
3 апр 14, 12:47    [15826588]     Ответить | Цитировать Сообщить модератору
 Re: SSIS. Источник EXCEL  [new]
Yagrus2
Member

Откуда: Москва
Сообщений: 895
Mismeric
Yagrus2,
попробуй установить вот это на сервер.
http://www.microsoft.com/en-us/download/details.aspx?id=23734

После установки AccessDatabaseEngine проблема, указанная в первом посте самоустранилась.
Теперь EXCEL Source подтягивает в себя вкладки и 64-х битного EXCEL-я 2010.

Но все же я думаю, что SSIS и EXCEL x64 в связке работают некорректно.
А именно.

Я хочу создать пакет, который будет каждый день перезаписывать EXCEL-файл данными из таблицы SQL-сервера.
Соответственно, изначально я имею залитый EXCEL-файл, со вкладкой RESS (Шаг0), которую
сначала нужно очищать (Шаг1), а затем заполнять данными из таблицы SQL-сервера(Шаг2).
Шаг0 осуществляется отдельным пакетом один раз.
Шаг1 и Шаг2 - пакет, который пытаюсь создать. Запускается один раз в сутки.

Загвоздка получается на этапе Шаг1. Реализован он двумя последовательными Execute SQL Task,
в которых сначала происходит удаление данных с вкладки RESS
DROP TABLE `RESS` 

а затем пересоздание таблицы(что соответствует созданию указанных столбцов на вкладке)
CREATE TABLE `RESS` (
    `CreatedBy` LongText,
    `lastname` LongText,
    `firstname` LongText,
    `patronymicname` LongText,
    `LoanStatus` LongText,
    `StatusDate` DateTime,
    `principal` Currency,
    `interest` Currency,
    `AuditDate` DateTime
)

Собственно CREATE TABLE вываливется с ошибкой:
Error: 0xC002F210 at Execute SQL Task, Execute SQL Task: Executing the query "CREATE TABLE `RESS` (
`CreatedBy` LongText,
..." failed with the following error: "Table 'RESS' already exists.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.
Task failed: Execute SQL Task


Если я те же операции буду совершать с EXCEL 97-2003 то CREATE TABLE проходит без ошибок и столбцы на вкладке создаются.

Вот так я наткнулся на стену кирпичей.
На днях попробуем установить EXCEL х32 и продолжить тесты
3 апр 14, 12:49    [15826602]     Ответить | Цитировать Сообщить модератору
 Re: SSIS. Источник EXCEL  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7868
Есть такая чудная штука - называется Visual Basic for Application.
Работает на глубине сто метров и в космическом вакууме.
3 апр 14, 17:25    [15828596]     Ответить | Цитировать Сообщить модератору
 Re: SSIS. Источник EXCEL  [new]
Yagrus2
Member

Откуда: Москва
Сообщений: 895
Владислав Колосов,
Если не сложно приведите пример скрипта от которого можно оттолкнуться.
3 апр 14, 18:51    [15829219]     Ответить | Цитировать Сообщить модератору
 Re: SSIS. Источник EXCEL  [new]
Alexey I.G.
Member

Откуда:
Сообщений: 18
Нажмите ПК мыши на пакет - там в свойствах debugging или другом каком-то есть 64-bit - поставьте в false
7 апр 14, 23:51    [15846573]     Ответить | Цитировать Сообщить модератору
 Re: SSIS. Источник EXCEL  [new]
Yagrus2
Member

Откуда: Москва
Сообщений: 895
Alexey I.G.
Нажмите ПК мыши на пакет - там в свойствах debugging или другом каком-то есть 64-bit - поставьте в false

Эту настройку я установил с самого начала.
8 апр 14, 09:57    [15847375]     Ответить | Цитировать Сообщить модератору
 Re: SSIS. Источник EXCEL  [new]
Yagrus2
Member

Откуда: Москва
Сообщений: 895
Yagrus2
Mismeric
Yagrus2,
попробуй установить вот это на сервер.
http://www.microsoft.com/en-us/download/details.aspx?id=23734

После установки AccessDatabaseEngine проблема, указанная в первом посте самоустранилась.
Теперь EXCEL Source подтягивает в себя вкладки и 64-х битного EXCEL-я 2010.
.
.
.
Собственно CREATE TABLE вываливется с ошибкой:
Error: 0xC002F210 at Execute SQL Task, Execute SQL Task: Executing the query "CREATE TABLE `RESS` (
`CreatedBy` LongText,
..." failed with the following error: "Table 'RESS' already exists.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.
Task failed: Execute SQL Task


Если я те же операции буду совершать с EXCEL 97-2003 то CREATE TABLE проходит без ошибок и столбцы на вкладке создаются.

Вот так я наткнулся на стену кирпичей.
На днях попробуем установить EXCEL х32 и продолжить тесты


Установка EXCEL х32 не помогла. Кстати, без установки AccessDatabaseEngine настройка EXCEL Source также заканчивается ошибкой из первого поста.
Лишь после установки AccessDatabaseEngine листы подтягиваются.
Ошибка с CREATE TABLE также осталась.

Коллеги проведите пожалуйста у себя тест по удалению области данных с листа EXCEL-файла, для 2010 офиса.
8 апр 14, 12:51    [15848781]     Ответить | Цитировать Сообщить модератору
 Re: SSIS. Источник EXCEL  [new]
Mismeric
Member

Откуда:
Сообщений: 25
Yagrus2
Yagrus2
пропущено...

После установки AccessDatabaseEngine проблема, указанная в первом посте самоустранилась.
Теперь EXCEL Source подтягивает в себя вкладки и 64-х битного EXCEL-я 2010.
.
.
.
Собственно CREATE TABLE вываливется с ошибкой:
Error: 0xC002F210 at Execute SQL Task, Execute SQL Task: Executing the query "CREATE TABLE `RESS` (
`CreatedBy` LongText,
..." failed with the following error: "Table 'RESS' already exists.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.
Task failed: Execute SQL Task


Если я те же операции буду совершать с EXCEL 97-2003 то CREATE TABLE проходит без ошибок и столбцы на вкладке создаются.

Вот так я наткнулся на стену кирпичей.
На днях попробуем установить EXCEL х32 и продолжить тесты


Установка EXCEL х32 не помогла. Кстати, без установки AccessDatabaseEngine настройка EXCEL Source также заканчивается ошибкой из первого поста.
Лишь после установки AccessDatabaseEngine листы подтягиваются.
Ошибка с CREATE TABLE также осталась.

Коллеги проведите пожалуйста у себя тест по удалению области данных с листа EXCEL-файла, для 2010 офиса.

http://social.msdn.microsoft.com/Forums/sqlserver/en-US/3e7f5a8b-48d7-41b1-862f-c1bd02152635/error-0xc002f210-at-preparation-sql-table-query-already-exists Должно помочь решить проблему
12 май 14, 09:48    [16002519]     Ответить | Цитировать Сообщить модератору
 Re: SSIS. Источник EXCEL  [new]
vikkiv
Member

Откуда: London
Сообщений: 2711
Yagrus2, Для очистки данных использовал два дополнительных Control Flow шага (Execute SQL task), первый drop table хх второй create table xx (...) применительно к предварительно созданному Excel connection в DataFlow. Система Win8.1x64/SQL2014St/SSDT_BI_2014(VS2013)/Office2013x64 .. пролетает на ура без Access Database Engine .. но естественно и сам этап предварительно созданного Excel connection в DataFlow проходит без ошибок (создание файла/указание директории/создание и выбор таблицы назначения)
12 май 14, 12:44    [16003652]     Ответить | Цитировать Сообщить модератору
 Re: SSIS. Источник EXCEL  [new]
LolBee
Member

Откуда: Киев
Сообщений: 45
Господа, не подскажите, есть где-то нормальное пошаговое руководство для шлангов, как сделать так чтоб пакет использовал как источник ексель файл имя которого частично меняется?

Перерыл пол инета, не могу я вьехать..руки опускаются(((
12 май 14, 15:20    [16004861]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить