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

Вниз

Таблицы db, dbf   Найти похожие ветки 

 
Прохожев М   (2006-09-28 10:20) [0]

Добрый день! Подскажите пожалуйста как получить все поля таблицы ?

Пример: в таблице (tblBase) есть 4 поля (Fio,Tel,adress,id)
мне необходимо получить все 4 поля и присвоить их к переменным.
...Заранее Благодарю.


 
Elen ©   (2006-09-28 10:28) [1]


> Прохожев М

получать
var:=Table1.FieldByName("FIO").As...
var:=Table1.FieldByName("Tel").As...
var:=Table1.FieldByName("Adres").As...
var:=Table1.FieldByName("Id").As...
передавать
Table1.FieldByName("FIO").As...:=var
Table1.FieldByName("Tel").As...:=var
Table1.FieldByName("Adres").As...:=var
Тable1.FieldByName("Id").As...:=var


 
Прохожев М   (2006-09-28 10:30) [2]

Это я знаю, мне просто нужно получить поля а не значения. Таблица может быть любой и полей может быть сколько угодно. В данном случае мы знаем что в таблице 4 поля и знаем имена полей. А мне нужно сделать то же самое с незнакомой таблицей.


 
Elen ©   (2006-09-28 10:33) [3]


> Прохожев М

Table1.Fields.Fields... - тебе в помошь, добрый человек. Там есть и количество и номер и имя полей


 
ЮЮ ©   (2006-09-28 10:34) [4]


> А мне нужно сделать то же самое с незнакомой таблицей.
>

а как же тогда запасешься необходимым количество переменных нужного типа?
TDataSet.Fields[Index] - это уже и есть "массив" значений полей текущей записи набора данных. Зачем ещё какие-то перемнные и зачем туда чего-то засовывать???


 
Прохожев М   (2006-09-28 10:36) [5]

Подскажите как переобразовать TField в String ?


 
clickmaker ©   (2006-09-28 10:39) [6]


> [5] Прохожев М   (28.09.06 10:36)

это еще зачем? имя нужно? так это Fields[i].FieldName


 
Прохожев М   (2006-09-28 10:41) [7]

Всем спасибо, вы мне очень помогли и извините за тупые вопросы.


 
Прохожев М   (2006-09-28 10:50) [8]

Мастера, еще один вопрос по таблицам.  

Можно ли отфильтравать таблицу несколько раз и не отменять предыдущие фильтрации?


 
clickmaker ©   (2006-09-28 10:51) [9]

Table.Filter := Table.Filter + " and ... ";


 
Прохожев М   (2006-09-28 10:58) [10]

2 clickmaker

Спасибо большое!


 
MsGuns ©   (2006-09-28 13:47) [11]

>Прохожев М   (28.09.06 10:30) [2]
>Это я знаю, мне просто нужно получить поля а не значения. Таблица может быть любой и полей может быть сколько угодно. В данном случае мы знаем что в таблице 4 поля и знаем имена полей. А мне нужно сделать то же самое с незнакомой таблицей

Есть два принципиально разных подхода:

1.
- "Попросить" у самой таблицы, используя простейший запрос типа
  Select * from table where 1<>1, "завернутую" в любую "датасетную" обертку (TQuery, TADOQuery, TADODataSet...),
- полученную в результате коллекции TDataSet.Fields/TDataSet.FieldDefs
использовать в нужных целях

2.
"Попросить" у "хозяина" таблицы, не беспокоя собственно таблицу: для локальных БД "хозяином" выступает "концентратор" обмена данными типа TDataBase(BDE), TADOConnection(ADO), TIBConnection(IBX)..., для серверных - запросы к метаданным (для разных серверов и поддерживаемых ими стандартов SQL синтаксис разный)

>clickmaker ©   (28.09.06 10:51) [9]
>Table.Filter := Table.Filter + " and ... ";

Так делать не надо ни в коем случае.


 
ASoft   (2006-09-29 06:30) [12]


> >Table.Filter := Table.Filter + " and ... ";
>
> Так делать не надо ни в коем случае.
>

ну, наверное, просто фильтрация по составному условию, без Table.Filter +?



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

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

Наверх




Память: 0.49 MB
Время: 0.047 c
2-1159360924
Alex_C
2006-09-27 16:42
2006.10.15
Как скрыть каретку в Memo?


3-1155220269
.ruslan
2006-08-10 18:31
2006.10.15
Изменить цвет помеченых строк в DBGridEh


5-1140892669
Perfect
2006-02-25 21:37
2006.10.15
Обтекание текстом картинки


15-1158829022
buka
2006-09-21 12:57
2006.10.15
Совершенный код


2-1159709499
RASkov
2006-10-01 17:31
2006.10.15
Sorry