![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите с запросом на MySQL сервер [D6, MySQL]
OlegM © (2003-03-24 09:18:00)Привет всем!
Запросик простой, нужно узнать сколько колонок в таблице.
Жук (2003-03-24 13:22:00) [1]2 Johnmen
Fields.Count - слишком просто, стоит только книгу почитать, а самому придумать - гораздо интереснее. :-)))
Johnmen (2003-03-24 11:57:00) [2]>OlegM © (24.03.03 11:36)
Ты что, не читаешь ответы ? Они тебе не нужны ?
>Жук © (24.03.03 11:21)
По-моему красота в Fields.Count :)
OlegM (2003-03-24 11:36:00) [3]Я неиспользую компонент Query, поэтому этот метод вряд ли подойдет. Мне бы, если есть какую-нибудь встроенную функцию MySQL.
Жук (2003-03-24 11:21:00) [4]
> Anatoly Podgoretsky © (24.03.03 10:51)
> Да особенно когда в таблице будет миллион записей
Можно поставить к.-н. условие, чтобы 1 строка отобралась.
> Johnmen © (24.03.03 10:54)
> Особенно тем, что count всегда будет = 0, даже если подправить
> мелкие описки...
Не поленился - проверил. Всё прекрасно работает :
if FDM.Q.Open then FDM.Q.Close;
FDM.Q.SQL.Clear;
FDM.Q.SQL.Add("select * from vir_obr");
FDM.Q.ExecQuery;
count:=0;
a:=true;
while a do
begin
try
caption:=FDM.Q.Fields[count].AsString;
Inc(count);
except
a:=false;
end;
end;
Caption:=IntToStr(count);
Johnmen (2003-03-24 10:54:00) [5]Особенно тем, что count всегда будет = 0, даже если подправить мелкие описки...
Anatoly Podgoretsky (2003-03-24 10:51:00) [6]Да особенно когда в таблице будет миллион записей
Жук (2003-03-24 10:42:00) [7]Мой метод интереснее :-)
Johnmen (2003-03-24 10:39:00) [8]Пардон...
см.SHOW [FULL] COLUMNS FROM tbl_name [FROM db_name] [LIKE wild]
Johnmen (2003-03-24 10:35:00) [9]см. справочное руководство,
SHOW TABLE STATUS
_Shade (2003-03-24 10:18:00) [10]а FieldCount?
Жук (2003-03-24 10:03:00) [11]Тыда можно :
MyQuery.SQL.Add("select * from MyTable");Типа так.
MyQuery.Open;
count:=0;
a:=true;
while a do
begin
try
IntToStr(MyQuery.Fields[count].AsString;
Inc(count);
except
a:=false;
end;
end;
OlegM (2003-03-24 09:53:00) [12]Да хоть как, лижбы количество полей возвращало
Жук (2003-03-24 09:52:00) [13]Надо именно одним SQL-запросом ?
OlegM (2003-03-24 09:48:00) [14]Неужели никто не знает?