Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как вывести SQL запрос в DBComboBox? [D7, MySQL]


Liona ©   (2004-04-12 15:37:00) 

Как вывести SQL запрос в DBComboBox? Вот сам запрос, а как вывести данные?

var DB:PMySQL;
   Qry:String;
   QryASCIIZ:PChar;
   result:PMYSQL_RES;
   row:PMySQL_Row;
begin
   DB:=mysql_init(nil);                    {init database handler}
   mysql_real_connect(DB,'progr.tsi.com','test','testuser','temp',0,nil,0); {connect}
   qry:='select a,b,c from abc where b>10 order by a'; {make query}
   GetMem(QryASCIIZ,length(qry)+1);        {Get memory for ASCIIZ string}
   StrPCopy(QryASCIIZ,qry);                {Copy qry to ASCIIZ string}
   mysql_real_query(DB,QryASCIIZ,length(qry));        {Execute query}
   result:=mysql_use_result(DB);           {Get result}
   row:=mysql_fetch_row(result);           {Get current row of result}
   while mysql_eof(result)=0 do
       begin
          ShowMessage(row[0]+':'+row[1]);  {Result output}
          row:=mysql_fetch_row(result);    {Get current row of result}
       end;
   FreeMem(QryASCIIZ);                     {Free memory of result}
   mysql_close(DB)                         {disconnect}
end;


Liona   (2004-04-12 16:45:00) [1]

clickmaker- ну и ладно, спасибо большое. :)


clickmaker   (2004-04-12 16:37:00) [2]


> Liona   (12.04.04 16:29) [6]

Для DataSource нужен DataSet. А в данном примере, наскоко я понял, результат получен напрямую из объекта DB. Поэтому зачем наворачивать с DataSourcами?


Liona   (2004-04-12 16:29:00) [3]

А как через DataSource? Учитывая что соудинение уже есть.


clickmaker   (2004-04-12 16:26:00) [4]

А зачем именно DBComboBox?

while mysql_eof(result)=0 do
      begin
         ComboBox.Items.Add(row[0]+':'+row[1]);
         row:=mysql_fetch_row(result);    {Get current row of result}
      end;


Курдль   (2004-04-12 16:22:00) [5]


> Ну так покажите и научите, а за одно ответьте на опррос.

Трудновато, т.к. многие классы "за кадром". Например, не могу себе представить, что такое PMySQL...
Корректно вывести результат запроса в DBComboBox можно только одним способом - передав набор данных через DataSource. А как грузануть его прямо из памяти я не знаю...
Думаю, что Вам лучше всего спросить у того, кто это писал :)


Liona   (2004-04-12 16:16:00) [6]


> Вы считаете, что это запрос? Это целый транспорт какой-то...

Это конечно не сам запрос, это Event по нажатию на кнопку в Delphi. Но все коннектится. А как это выложить в DBComboBox?
Ну так покажите и научите, а за одно ответьте на опррос.


Курдль   (2004-04-12 16:06:00) [7]


> Вот сам запрос...

Вы считаете, что это запрос? Это целый транспорт какой-то...


Liona   (2004-04-12 16:04:00) [8]

Ну неужели никто незнает?


Наверх

Титульная страница Поиск, карта сайта Написать письмо