Combobox та список таблиць

ка помістити в комбобокс список таблиць обраної бази?

У чому полягає проблема? У приміщенні рядків у комбобокс, чи визначенні списку таблиць?

1. ставиш коннект на базу 2. виконуєш SELECT * FROM INFORMATION_SCHEMA.TABLES 3. парсиш отриманий датасет і заливаєш куди завгодно.

> Mechanikus (26.03.07 18:09) [2]3. парсиш отриманий датасет і заливаєш куди завгодно.

var qw: TADOQuery; cb: TComboBox;

qw.ConnectionString:=""; //типу твій конн стрінг задай qw.SQL.Clear; qw.SQL.Add("SELECT * FROM INFORMATION_SCHEMA.TABLES"); qw.Open;

cb.Clear; qw.First; while не qw.Eof do begin cb.Items.Add(qw.FieldByName("Table_Name").AsString); qw.Next; end;

PS. Це приклад.. ніколи так у реалі не роби :)

Прикольно :) "Шурик, все вже зроблено. за нас!" :)))))

Вибачаюсь за настирливість.. але продовжу :)

використовую mysql сервер, підключаюся вдало, у випкшв все завантажується норм.

використовую query з SQL рядком "show tables".. в dbgrid все проходить норм.

пробую робити так:

ADQuery3.SQL.Clear; ADQuery3.Close; ADQuery3.SQL.add("use databas_name;"); ADQuery3.SQL.add("show tables"); ADQuery3.Open; ADQuery3.First; while ADQuery3.Eof do begin jvComboBox1.Items.add(ADQuery3.Fields[0].AsString); ADQuery3.Next end; end;

не спрацьовує. якщо використовую гриди, то все пучком.

p.s. чому так не робити в реалі? p.s.2 той код у мене не спрацював.

1. не слід використовувати прямі запити з клієнта. все стоїть через сторожу процедури. 2. не спрацював? дивно.. я з дельфі копіював :)

Але тут Дмитро прикольніший варіант показав вище. Береш TADOConnect,налаштовуєш. потім adoConnect.GetTableNames(comboBox1.Items,false);

є ще питання :)

а як бути, якщо мені потрібно загнати в комбобокс (наприклад) вміст першого поля обраної таблиці?

як зробити коректніше?

я, напевно, не в той розділ форуму потрапив. ;)