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

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

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.04.2009, 21:54   #1
Roman_RNP
 
Регистрация: 14.04.2009
Сообщений: 3
По умолчанию Выборка из txt в БД access

Добрый день!
Существует такая проблема:
необходимо осуществить выборку из файла с расширением txt данных и распределить в соответствующие ячейки БД Access.
Данные в txt файле имеют такую структуру: Иванов Иван Иванович 13.03.1933 г.р., ур. г. Дмитров, Московская область, срок до 12.09.2009 г., соответстенно необходимо разнести Иванов Иван Ивановичь в одну колонку, дату рождения в другую, и т.д. соответственно.
Подскажите пожалуйста как решить эту задачу в Delphi?
Заранее благодарен.
Roman_RNP вне форума Ответить с цитированием
Старый 15.04.2009, 00:03   #2
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

Для начала импортировать текстовую базу в базу Access средствами БД Access.
То есть открываете Аксесс Находите вкладку Внешние данные и импорт текстового файла и следуя всем шагам далее(в вашем случае разделитель поставите запятая и остальное по анологии). После сохраните эту базу данных и работайте с ней.
Потом в Дельфи подсоедените базу mdb например, через AdoConnection, AdoQuery, Datasource, DbGrid. Остальные действия уже много раз описывались на форуме...
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
ArtInt вне форума Ответить с цитированием
Старый 15.04.2009, 20:10   #3
Roman_RNP
 
Регистрация: 14.04.2009
Сообщений: 3
По умолчанию

Большое Спасибо!
Но использовать в качестве разделителя запятую (или любой другой знак в качестве маркера) нет возможности, так как объемы очень большие (по 8-10 тысяч человек в неделю) и проставлять маркеры в ручную отнимает очень много времени и сил. А нет какого-нибудь другого способа выборки, без разделителей?
Заранее спасибо!
Roman_RNP вне форума Ответить с цитированием
Старый 15.04.2009, 21:34   #4
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

Не совсем понятно. Я так понимаю, что у Вас уже есть текстовый файл в котором записаны эти данные через запятую, как вы описывали ранее, тогда делаете действия описанные в посте 2.
Если предположить что у Вас нет текстового файла, то зачем его создавать, не легче сразу забивать в базу Access.
Уточните вопрос...
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
ArtInt вне форума Ответить с цитированием
Старый 15.04.2009, 21:46   #5
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

Если есть текстовый файл, выложите на форуме, если смогу то создам черновой вариант в дельфи как делать, если не получится то хоть будет понятно "куда копать". Если данные конфиденциальные, постарайтесь изменить на вымышленные, достаточно всего строчек 5 - 10 для экспериментов, но только чтобы они соответствали правильному расположению в файле...
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
ArtInt вне форума Ответить с цитированием
Старый 17.04.2009, 15:42   #6
Roman_RNP
 
Регистрация: 14.04.2009
Сообщений: 3
По умолчанию

1. ИВАНОВ ИВАН ИВАНОВИЧ 13.03.1975 Г.Р., УР. Г. НАБ. ЧЕЛНЫ,
ТАТАРСКАЯ АССР - ДО 12.09.2009
2. ПЕТРОВ ПЕТР ПЕТРОВИЧ 14.09.1984 Г.Р., УР. Г. КАЗАНЬ,
ТАТАРСКАЯ АССР - ДО 13.09.2009
3. СИДОРОВ СИДОР СИДОРОВИЧ 04.10.1965 Г.Р., УР. Г. АНГРЕН,
ТАШКЕНТСКАЯ ОБЛАСТЬ, УЗБЕКСКАЯ АССР - ДО 05.09.2009

Вот структура, в которой поступают текстовые файлы (txt, кодировка dos), я изменил только содержание, структура один в один (остальное в списке в том же виде).
Проблема в том, что не все данные которые необходимо разделить, отделены запятой, ФИО должны быть в одном поле БД, дата рождения в другой, данные о месте рождения в третьей, срок в следующей.
Большое спасибо!
Roman_RNP вне форума Ответить с цитированием
Старый 17.04.2009, 15:52   #7
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

Постараюсь сделать для начала алгоритм приводящий данный файл правильно воспринимаемый Accessом для перевода в базу данных. Чуть попозже выложу исходник.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
ArtInt вне форума Ответить с цитированием
Старый 17.04.2009, 20:07   #8
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

Как обещал по быстрому сделал работающий код для создания файла convertbaze.txt, который можно конвертировать в базу Access. Только будет 5 полей: фио, дата рождения, город, регион, срок.
В аксессе при конвертации учитывайте, что разделитель запятая, и кодировка Кириллица (Windows).
Прилагаю исходник и exe для скачивания. Все работает. Могу полностью сделать данную программу под ключ, но это уже за определенную плату, за недорого.
Сами понимаете интернет не бесплатный, да и времени много уходит.
А так спрашивайте ответим.
Если захотите отблагодирить кошелек Web money R186462041384 или добавьте отзыв (весы слева)
на ваше усмотрение.
Вложения
Тип файла: rar выборка из базы данных и перевод ее в Access.rar (176.9 Кб, 148 просмотров)
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.

Последний раз редактировалось ArtInt; 17.04.2009 в 20:27.
ArtInt вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
выборка из БД xvipx Microsoft Office Excel 13 30.01.2009 12:43
Delphy и Access.вводя инфу во вторичный файл Access, она отражалась в первом ADOTable Lev БД в Delphi 0 11.11.2007 12:14
выборка Ser_gl Microsoft Office Excel 1 24.08.2007 20:49
Выборка John_chek БД в Delphi 10 27.06.2007 08:43
Как прочесть txt файл www.site.ru/info.txt BR17UY Работа с сетью в Delphi 1 16.04.2007 13:01