Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 25.12.2007, 15:47
Аватар для XIO
XIO XIO вне форума
Новичок
 
Регистрация: 06.12.2007
Сообщения: 77
Репутация: 32
Вопрос Экспорт и импорт через txt

Доброго времени суток уважаемые коллеги. Ссори если обращаюсь не в тему или данная тема уже обсуждалась. Но в данном разделе не нашёл я ничего подобного. А ответ хочу максимально подробный. Но и решать за себя не прошу)))

В общем уже недели 3 вынашиваю идею импорта и экспорта данных из БД и в БД через промежуточный txt файл. В принцепи то все просто до безобразия. Делаем разделителем полей скажем символ #9, и дело в шляпе. Но что то я либо туплю, либо ситуация не простая у меня вырисовывается. Экспорт делаю примерно так:

Код:
DataModl.Table.First;
  While DataModl.Table.Eof = False do
    begin
      Memo1.Lines.Add(DataModl.Table.FieldByName('Name').AsString+#9);
      Memo1.Lines.Add(DataModl.Table.FieldByName('Info').AsString+#9);
      Memo1.Lines.Add(DataModl.Table.FieldByName('Login').AsString+#9);
      Memo1.Lines.Add(DataModl.Table.FieldByName('Pass').AsString+#9);
      DataModl.Table.Next;
    end;
  Memo1.Lines.SaveToFile('C:\test1.txt'); 

А вот далее начинается веселье. Начну с того, что поле Info является мемо полем. И если обычную строку с текстового файла назад
в программу, а затем в БД можно импортировать приблизительно таким методом:
Код:
      J:=0;
      While Memo1.Lines.Strings[J] <> #9 do begin
        Name := Name + Memo1.Lines.Strings[J];
        Inc(J);
      end;

То, как быть с мемо полем я просто иметия не поняю

Да собственно и строку я наверняка неправильно пытаюсь импортировать. От предыстории к конкретно интерисующим вопросам.

Как можно обратиться к конкретному символу мемо поля ? Ну скажем
символ находящийся на 5й строке и в 17й позиции? Я понимаю что когда то мы это писали на лекциях( вроде бы как бы... ), и где то это написано в книгах. Я конечно время даром терять не буду и книги полопатю, но если кто то на форуме сможет ответить быстрее чем я найду ответ сам, респект и уважуха тому челу

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

Жду ответов. Зарание спасибо.

Последний раз редактировалось XIO, 25.12.2007 в 15:49.
Ответить с цитированием
  #2  
Старый 26.12.2007, 07:16
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,907
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

А ты попробуй генерить не просто текстовый файл, а текстовый фыйл содержащий SQL скрипт вставки полей в таблицу(ы). И при загрузке в базу просто запускай этот скрипт на выполнение.
Ответить с цитированием
  #3  
Старый 26.12.2007, 07:22
Аватар для XIO
XIO XIO вне форума
Новичок
 
Регистрация: 06.12.2007
Сообщения: 77
Репутация: 32
Хорошо

Цитата:
Сообщение от Aristarh Dark
А ты попробуй генерить не просто текстовый файл, а текстовый фыйл содержащий SQL скрипт вставки полей в таблицу(ы). И при загрузке в базу просто запускай этот скрипт на выполнение.
О! Это замечательная мысль! Большое спасибо! )) Сейчас подумаю над сеим вопросом.
Ответить с цитированием
  #4  
Старый 26.12.2007, 12:06
Аватар для The Shadow
The Shadow The Shadow вне форума
Продвинутый
 
Регистрация: 11.06.2007
Адрес: Уфа, Россия
Сообщения: 793
Репутация: 35
По умолчанию

Цитата:
Сообщение от XIO
Как можно обратиться к конкретному символу мемо поля ?
Memo.Lines.Strings[Номер строки][Номер символа]
__________________
Что делать, когда сломался комп:
1. Если вы юзер - делать ноги.
2. Если ремонтник - делать деньги.
3. Если вы программист - делать вид, что так было задумано.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 01:10.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025