Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.02.17;
Скачать: CL | DM;

Вниз

Считать данные из таблицы Access в упорядоченную структуру ?   Найти похожие ветки 

 
Anton   (2008-01-24 20:52) [0]

Доброго времени суток !!! Не могу такую проблемку решить:
Есть такая вот структура, использую ее для программирования упорядоченного списка:

Type
TPN = ^TN; //Указатель на переменную типа TN
//Описание типа элемента списка
TN = record
  Number : integer; //Номер
  x0 : integer; //Координаты по X
  y0 : integer; //Координаты по Y
  Next : TPN; //Указатель на следующий элемент списка
end;
/Это один из 2-х разных по структуре списков/

После работы основной проги список нужно сохранить на винт, разобрался как сохранять в типизированные файлы. (точнее в два отдельных, т.к. в проге два списка), в один файл сохранять не получается. Может есть какой вариант ?

Пробую сохранять один (показанный) список в базу MSAccess через ADO вот так:
--------------кусь-------------------------

ADOQuery1.SQL.Add("CREATE TABLE Tab1 (Number  Number ,x0 Number,y0 Number)");
ADOQuery1.ExecSQL
ADOQuery1.SQL.Clear;
currN:=headN;
predN:=nil;
 while (currN <> nil) do
  begin
   ADOQuery1.SQL.Add("INSERT INTO Tab1 (Number,x0,y0)");
   ADOQuery1.SQL.Add("values("""+IntToStr(currN^.Number)+""","""+IntToStr(currN^.x0)+""","""+IntToStr(currN^.y0)""")");
   ADOQuery1.ExecSQL;
   ADOQuery1.SQL.Clear;
   predN:=currN;
   currN:=currN^.Next;
  end;
в Access все сохраняется, все ок.
Внимание вопрос:
ЧТО нужно написать что бы считать данные из Таблицы БД в структуру типа Запись
ЗЫ:Может примерчик какой подкинете элементарный типа:
Считываем в таблице поле - присваиваем значение переменной Delphi , дальше сам разберусь
Заранее СПАСИБО !


 
Slym ©   (2008-01-25 05:39) [1]

var
 Root:TN;
 currN:TPN;
begin
 ADOQuery1.SQL.Add("SELECT * FROM Tab1;");
 ADOQuery1.Open;
 Root.Next:=nil;
 currN:=@Root;
 while not ADOQuery1.Eof do
 begin
   currN.Next:=New(TPN);
   currN:=currN.Next;
   currN.Number:=ADOQuery1.FieldByName("Number").AsInteger;
   currN.x0:=ADOQuery1.FieldByName("x0").AsInteger;
   currN.y0:=ADOQuery1.FieldByName("y0").AsInteger;
   currN.Next:=nil;
   ADOQuery1.Next;
 end;
 currN:=Root.Next;
end;



Страницы: 1 вся ветка

Текущий архив: 2008.02.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.02 c
8-1173470589
Ricks
2007-03-09 23:03
2008.02.17
Количество уникальных цветов в изображении


3-1191432473
PeL!gr!m
2007-10-03 21:27
2008.02.17
Миграция ПО с БД


15-1200296233
Stilet
2008-01-14 10:37
2008.02.17
Как в VirtualBox настроить виртуальную сеть


15-1200422033
slomalsa_comp
2008-01-15 21:33
2008.02.17
Не включается компьютер :( БИОС не пищит.


6-1180363792
q10nik
2007-05-28 18:49
2008.02.17
Определение сервиса и его версии