Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.11.2015, 17:11   #11
Vapaamies
Просветитель
Участник клуба
 
Аватар для Vapaamies
 
Регистрация: 26.12.2012
Сообщений: 1,844
По умолчанию

Как определяется тип данных колонки драйвером ACE.DB:
Цитата:
When you are reading an excel file into a data table, the data table reads the column values and after about 8-10 records, it will assign data type to a column. For example if the column values are
11.0
22.0
33.0
44.0
55.0
66.0
77.0
88.0
99.0
abc
So, the data table won't have the value abc as the column has been assigned the data type "Double". To avoid this, and to read complete data IMEX = 1 is used.
Please, comment for further queries.
Ключевой момент в ответе выделил жирным. Если автор ответа прав, это должно помочь. Если и правда поможет, на этот раз отца русской демократии спас индус.
В разработке: воспроизводственный контур ИТ
Vapaamies вне форума Ответить с цитированием
Старый 18.11.2015, 17:16   #12
Ship_1
Форумчанин
 
Регистрация: 10.02.2014
Сообщений: 526
По умолчанию

Цитата:
Сообщение от come-on Посмотреть сообщение
Ну так вам нельзя трогать файл.
А, Вы про данные в экселевском файле?... Я подумал, получаемые моей программкой...
Цитата:
Сообщение от come-on Посмотреть сообщение
Попробуйте вот так установить что 1 строка это хидер http://www.connectionstrings.com/excel/
Это моя первая сильно условная работа с БД-типным кодом, поэтому для меня код там выглядит как незнакомый мне иностранный язык. Кроме того я не знаком с английским. Поэтому перейдя по ссылке первой моей эмоцией было И ещё я не понял что такое хидер.
Но переведя гуглом страницу, потыкавшись по словам, скопировав кусок кода, показавшийся мне интересным я попробовал запустить программку с небольшим изменением.
И ЙЕССС!!! Это заработало!!!
Вот строка, которая всё сделала:
Код:
MyConn.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + NameBook + ';Extended Properties="Excel 8.0;HDR=NO;IMEX=1"';
До этого она выглядела так:
Код:
MyConn.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + NameBook + ';Extended Properties="Excel 8.0;HDR=NO"';
Огромнейшее спасибище!!!!

Vapaamies, спасибо за информацию, прочитал уже после того, как ответил come-on, теперь понятен смысл "IMEX=1"

Последний раз редактировалось Ship_1; 18.11.2015 в 17:35.
Ship_1 вне форума Ответить с цитированием
Старый 18.11.2015, 17:23   #13
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Читать ответы нужно. Еще в #2 предложил применить IMEX=1
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 18.11.2015, 17:26   #14
come-on
Участник клуба
 
Регистрация: 21.10.2015
Сообщений: 1,361
По умолчанию

Цитата:
Читать ответы нужно.
ну вот, а мы тут гадаем, что у ТС там так или не так..
come-on вне форума Ответить с цитированием
Старый 18.11.2015, 17:32   #15
Ship_1
Форумчанин
 
Регистрация: 10.02.2014
Сообщений: 526
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Читать ответы нужно. Еще в #2 предложил применить IMEX=1
Блин... Это была случайность какая-то... Я увидел весь ответ кроме последней строчки непонятно почему... Прошу прощения...
Или этой строки ещё не было когда я начинал отвечать - разница между моим ответом и правкой у Вас всего минута. А потом я к нему не вернулся...

Последний раз редактировалось Ship_1; 18.11.2015 в 17:40.
Ship_1 вне форума Ответить с цитированием
Старый 18.11.2015, 22:48   #16
Vapaamies
Просветитель
Участник клуба
 
Аватар для Vapaamies
 
Регистрация: 26.12.2012
Сообщений: 1,844
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Читать ответы нужно. Еще в #2 предложил применить IMEX=1
Я сам не знал, что это такое, поэтому полез за вместо автора темы просвещаться. Не люблю "заклинаний" в коде.
В разработке: воспроизводственный контур ИТ
Vapaamies вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ADO SQL Excel тип данных ZBEP БД в Delphi 0 13.01.2014 11:59
какой тип данных С# выбрать Sergey_gorobets Помощь студентам 2 08.02.2013 12:04
Как указать тип данных получаемых из TextBox PAMAC Microsoft Office Excel 2 08.11.2012 08:51
Какой тип данных использовать для хранения сэмплов wav файла, если нужно его конвертировать в lossless? Niaden Visual C++ 1 30.10.2012 18:59
как указать проекту какой модуль использовать? Umnik1 Общие вопросы Delphi 3 01.02.2009 20:45