Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];

Вниз

Как вывести SQL запрос в DBComboBox?   Найти похожие ветки 

 
Liona   (2004-04-12 15:37) [0]

Как вывести 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 15:37) [0]

Как вывести 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:04) [1]

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


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

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


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


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

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


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


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

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


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


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

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


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


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

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


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


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

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


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


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

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


 
clickmaker ©   (2004-04-12 16:26) [5]

А зачем именно 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;


 
clickmaker ©   (2004-04-12 16:26) [5]

А зачем именно 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;


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

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


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

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


 
clickmaker ©   (2004-04-12 16:37) [7]


> Liona   (12.04.04 16:29) [6]

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


 
clickmaker ©   (2004-04-12 16:37) [7]


> Liona   (12.04.04 16:29) [6]

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


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

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


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

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



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

Форум: "Базы";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.04 c
1-1082438914
BestMaster
2004-04-20 09:28
2004.05.09
JEDI VCL 3


1-1082763405
/\_A_M_E_P
2004-04-24 03:36
2004.05.09
Как програмно сделать главное окно програмы невидимым?


11-1066059582
Eugene_29
2003-10-13 19:39
2004.05.09
Как переделать VCL-проект в KOL?


3-1081830855
Sens
2004-04-13 08:34
2004.05.09
Помогите вычислить промежуток времени между двумя записями в базе


7-1080119578
Начинающий веб-дизайнер
2004-03-24 12:12
2004.05.09
Программное извлечение диска.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский