none
При выполнении запроса в MS Query он самостоятельно выбирает тип данных. Как выбрать вручную? RRS feed

  • Общие обсуждения

  • Проблема возникает при выполнении запроса в Microsoft Query (с последующим возвратом данных в таблицу Excel). Стоит задача выбрать данные из одного файла Excel, через MS Query, и поместить их в другой файл Excel. В исходном файле Excel есть столбец, который содержит как числовые , так и текстовые значения.

    Наблюдая за действиями MS Query с этим столбцом (полем), мы сделали вывод, что MS Query определяет тип столбца по первой записи в нем, после заголовка. Заголовки таблицы Excel находятся в строке А, а первое значение - начиная со строки В и ниже. Так вот, если в строке В стоит число, то MS Query определяет тип данных в этом поле как NUMBER, и все нечисловые значения просто игнорирует. Если же в строке В стоит текст, то MS Query определяет тип поля как VARCHAR (любые данные), и тогда подтягивает все значения.

    Задача - подтянуть ВСЕ значения. Как в MS Query выбрать тип поля вручную, или просто установить по умлочанию тип всех данных VARCHAR, чтобы никаие данные не игнорировались при выполнении запроса MS Query?

    • Изменен тип Vinokurov YuriyModerator 23 ноября 2010 г. 9:44 давность и отсутствие активности в теме
    22 октября 2010 г. 7:29

Все ответы

  • Мне подсказали, что причина кроется в реестре, в ветке HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel

    Там есть 7 переменных, среди которых TypeGuessRows, которая определеяет, сколько строк должен проанализировать MS Query, чтобы присвоить всему столбцу тип данных. По умолчанию стоит 8 строк (каких данных в первых 8 строках будет больше, такой тип Квери и и присвоит всему столбцу, остальные будет игнорировать).

    Есть ли переменная, которая запретить вообще просмтаривать данные для определения их типа? Нужно по умолчанию присвоить всем данным VARCHAR (любые данные).

     

    Дорогие гуру, ну подумайте, не проходите мимо!

    2 ноября 2010 г. 7:29
  • Вот это не то, что вам нужно?
    Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется "как есть" без каких-либо гарантий
    Follow MSTechnetForum on Twitter

    Посетите Блог Инженеров Доклады на Techdays: http://www.techdays.ru/speaker/Vinokurov_YUrij.html
    15 ноября 2010 г. 13:58
    Модератор
  • Уважаемый пользователь!

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


    Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется "как есть" без каких-либо гарантий
    Follow MSTechnetForum on Twitter

    Посетите Блог Инженеров Доклады на Techdays: http://www.techdays.ru/speaker/Vinokurov_YUrij.html
    22 ноября 2010 г. 10:00
    Модератор