Форум: "Базы";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];
ВнизSQLQuery и MySQL Найти похожие ветки
← →
pavel_guzhanov © (2005-04-20 10:51) [0]Подскажите, как можно просмотреть результат запроса?
SQLQuery.SQL.Add("Show Databases;");
Естественно, что перед отправкой запроса происходит соединение с сервером. Я попытался добавить DataSource, связать его с SQLQuery и с DBListBox, но в DBListBox ничего не отображается. Если делать через
SQLQuery.FieldByName(..... ,
то что надо указывать в качестве имени поля?
База данных - MySQL 4.0.18
← →
Johnmen © (2005-04-20 10:57) [1]TQSLQuery-TDataSetProvider-TClientDataSet-TDataSource-TDBGrid
Вот в этом БДГриде и увидишь.
← →
Johnmen © (2005-04-20 11:00) [2]или SQLQuery.Field[0]... ,
← →
Sergey13 © (2005-04-20 11:03) [3]Я с мускулом не работал, но мне кажется что "Show Databases;" это не СКЛ запрос, а команда сервера.
← →
Johnmen © (2005-04-20 11:05) [4]>Sergey13 © (20.04.05 11:03) [3]
Для MySQL это запрос.
← →
pavel_guzhanov © (2005-04-20 11:07) [5]TQSLQuery-TDataSetProvider-TClientDataSet-TDataSource-TDBGrid
А где взять TDataSetProvider-TClientDataSet?
← →
Johnmen © (2005-04-20 11:09) [6]DataAccess, есть такая закладка...:)
← →
Sergey13 © (2005-04-20 11:16) [7]2[4] Johnmen © (20.04.05 11:05)
Спорить не буду, ибо, повторюсь, не работал с мускулом. Но сомнения остаются. Не помню я в SQL слова SHOW. В Оракле например тоже можно в SQLPlus выполнить "desc table_name" и увидеть структуру таблицы. Но запросом эта команда программы SQLPlus не является, хотя скорее всего интерпретируется при выполнении в запрос.
← →
pavel_guzhanov © (2005-04-20 11:20) [8]да... протупил...
значит так. У DBGrid ставлю свойство DataSource - DataSource1, далее, у DataSource1 ставлю свойство DataSet - ClientDataSet1, У ClientDataSet1 свойство ProviderName - DataSetProvider1, у DataSetProvider1 свойство DataSet - SQLQuery1.
В программе делаю :
SQLQuery1.ExecSql();
В гриде нет ничего.
Что я сделал не так? Вроде бы все правильно...
← →
Johnmen © (2005-04-20 11:26) [9]SQLQuery1.Open; RTFM !!!!!!!!!!!!
>Sergey13 © (20.04.05 11:16) [7]
Верно, в стандарте нет. А в диалекте MySQL есть :)
← →
pavel_guzhanov © (2005-04-20 11:39) [10]Написал
SQLQuery1.Open;
ClientDataSet1.Active:=true;
В Гриде появился заголовок "DataBase", а список остается пустым:((.
Что я все-таки делаю не так? До этого работал с MSSQL через ADO, никаких проблем... А тут никак разобраться не могу....
← →
Johnmen © (2005-04-20 11:51) [11]Значит нет DataBase"ов, известных серверу :)
← →
pavel_guzhanov © (2005-04-20 11:53) [12]как же нет? Когда я эту же команду даю в командной строке, мне показывается три базы. Значит они там есть:))
← →
Johnmen © (2005-04-20 12:01) [13]Создай новый проект, накидай на форму необходимые компоненты, свяжи их, пропиши нужные свойства. И в дизайнтайме тестируйся, делай коннект, выполняй запрос, активизируй клиентдатасет...
Увидишь в гридевсё, как есть...:)
← →
pavel_guzhanov © (2005-04-20 12:05) [14]Буду экспериментировать, спасибо за помощь
← →
pavel_guzhanov © (2005-04-20 16:47) [15]Блин, замучился экспериментировать, не показывает грид ничего кроме заголовка... Может надо выставить какие-нибудь свойства у TSQLQuery-TDataSetProvider-TClientDataSet-TDataSource-TDBGrid, кроме очевидных?
А как использовать SQLQuery.Field[0]... , если можно, то подскажите всю строчку...
← →
Johnmen © (2005-04-20 17:02) [16]Никаких св-в, кроме очевидных, не надо. У меня тест работает, показывает много разных БД в одной колонке Database
:)YourDBName:=SQLQuery.Fields[0].AsString;
← →
pavel_guzhanov © (2005-04-21 10:09) [17]/У меня тест работает, показывает много разных БД в одной колонке Database/
Интересно, а у меня только название колонки, хотя три базы есть точно.
Попробовал сделать listbox и заполнить его вот так:ListBox1.Items.Add(SQLQuery.Fields[0].AsString);
В листбоксе в первую строку пишется "=1" и больше ничего. Не понимаю, в чем проблема....
← →
pavel_guzhanov © (2005-04-21 10:10) [18]Johnmen, может быть ты мне кинешь на мыло свой тест? Попробую хоть там разобраться....
← →
Johnmen © (2005-04-21 10:42) [19]Отправил тестовый пример.
Только мне думается, что дело в отсутствии зарегистрированных БД на сервере.
← →
pavel_guzhanov © (2005-04-21 10:47) [20]а почему тогда если я в командной строке после подключения к MySQL ввожу "Show databases", у меня выдается спмсок из трех баз? непонятно
← →
Roman_SVT (2005-05-13 16:28) [21]При попытке создать строку и вывести ее в форме для редактирования выходит ошибка Cannot perform this operation on an open connection
Help !!!! не могу от этого избавиться после ошибки все выполняется и работает исправно!!!
← →
Johnmen © (2005-05-13 16:32) [22]А где текст ?
← →
sniknik © (2005-05-13 17:24) [23]две темы одинаково неправильно оформлены... одним человеком, под разными никами.
← →
sniknik © (2005-05-13 17:26) [24]извиняюсь... он просто влез в чужое...
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.041 c