Форум: "Начинающим";
Текущий архив: 2009.06.21;
Скачать: [xml.tar.bz2];
Внизtquery dbase Найти похожие ветки
← →
Niktar (2009-04-29 00:12) [0]Прошу помочь разобраться с компонентом tquery, есть база dbase
на форме грид, который через датасорс выводит данные. К базе подключаюсь с помощью ttable.
В гриде выведена вся таблица, а мне нужно вывести с условием типа .... where name = "abc", подцепил tquery прописал sql.text active в true, но ничего не происходит
пишу так
select * from zavod where name = "abc"
← →
Юрий Зотов © (2009-04-29 00:24) [1]1. Почему двойные кавычки?
2. Как подцеплен TQuery?
← →
Niktar (2009-04-29 00:31) [2]через датасорс, двойные ковычки это пример из книжки
← →
Юрий Зотов © (2009-04-29 00:37) [3]> Niktar (29.04.09 00:31) [2]
1. Это к гриду. А к базе как он подцеплен?
2. В стандарте SQL, насколько помню - апострофы.
3. Хоть какие-нибудь сообщения есть?
← →
Niktar (2009-04-29 00:42) [4]Запутался.
1. TQuery-> DataSource = DataSource1, а DataSource-> DataSet = Table1
DM.qry1.SQL.Text := "select * from new.db where id = "+""""+"2"+"""";
dm.qry1.active:=true;
никак не реагирует, будто ничего не делаю
← →
Германн © (2009-04-29 00:47) [5]Всё же, по-моему двойные кавычки правильно.
2
> Niktar (29.04.09 00:12)
Сделай простой тестовый пример и приведи его тут. Тогда будет что проверять. И будет надежда на реальную помощь.
← →
Niktar (2009-04-29 00:50) [6]три поля
id,name,sumDM.qry1.Close;
dm.qry1.SQL.Clear;
DM.qry1.Active := false;
DM.qry1.SQL.Add("select * from new.db where id = "+""""+"2"+"""");
DM.qry1.Open;
DM.qry1.Active := true;
← →
Niktar (2009-04-29 00:55) [7]Не могу понять в чем дело, с firebird проще)))
но надо сделать с paradox
← →
KilkennyCat © (2009-04-29 01:05) [8]
> DM.qry1.Open;
> DM.qry1.Active := true;
не масляное масло?
← →
Германн © (2009-04-29 01:05) [9]
> Niktar (29.04.09 00:42) [4]
>
> Запутался.
>
> 1. TQuery-> DataSource = DataSource1, а DataSource-> DataSet
> = Table1
>
Проще для понимания плясать от другой печки.
1. Визуальный компонент TDBGrid показывает то, что даёт ему TDataSource. Следовательно -> DBGrid1.DataSource:=DataSource1;
2. Компонент DataSource1 (TDataSource) должен знать набор данных, которые он помогает показывать в визуальном компоненте, следовательно - DataSource1.DataSet:=Query1;
← →
Niktar (2009-04-29 01:05) [10]т.е. есть таблица данных
мне нужно вывести в грид не всю таблицу с данными а только данные по запросу.
← →
Niktar (2009-04-29 01:07) [11]ок, но в таком случае мне нужно как то подцепить базу к query, как?
← →
Германн © (2009-04-29 01:08) [12]А после понимания сути связи DB и DBAware компонент поймёшь, что в дизайнере Дельфи порядок строго обратный.
← →
Niktar (2009-04-29 01:09) [13]все, решил вопрос from new.db .. и все работает, Большое Спасибо ВАМ Юрий Зотов, Германн, KilkennyCat!
← →
Германн © (2009-04-29 01:10) [14]
> Niktar (29.04.09 01:05) [10]
>
> т.е. есть таблица данных
>
> мне нужно вывести в грид не всю таблицу с данными а только
> данные по запросу.
>
Нет таблицы. Есть БД.
← →
KilkennyCat © (2009-04-29 01:24) [15]
> Нет таблицы. Есть БД.
как это нет?!
← →
Niktar (2009-04-29 01:36) [16]Возвращаюсь на форум, select то работает хорошо, а вот если запись добавить, приходится использовать insert т.к. в dbgrid просто так не добавить запись и dbnavigator не поможет.
как быть?
← →
Германн © (2009-04-29 01:41) [17]
> Niktar (29.04.09 01:36) [16]
>
> Возвращаюсь на форум, select то работает хорошо, а вот если
> запись добавить, приходится использовать insert т.к. в dbgrid
> просто так не добавить запись и dbnavigator не поможет.
> как быть?
>
Забудь всё то, что ты знал про TTable.
И читай учебники по работе с БД.
← →
Германн © (2009-04-29 01:43) [18]
> Niktar (29.04.09 00:55) [7]
>
> Не могу понять в чем дело, с firebird проще)))
>
Хм. Не понял.
← →
Niktar (2009-04-29 01:57) [19]
DM.qry1.Active := false;
DM.qry1.SQL.Clear;
DM.qry1.SQL.Add("insert into xz.db (Name) values ("xz")");
DM.qry1.Active := true;
запись добавляется но появляется ошибка послеDM.qry1.Active := true
error creating cursor handle
← →
Игорь Шевченко © (2009-04-29 02:15) [20]Германн © (29.04.09 01:41) [17]
> Забудь всё то, что ты знал про TTable.
> И читай учебники по работе с БД.
Негуманно это.
← →
Юрий Зотов © (2009-04-29 02:21) [21]> Niktar (29.04.09 01:57) [19]
Active не имеет никакого отношения к insert/update. В справке по TQuery все разжевано, да еще и с примерами - почему бы не посмотреть?
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.06.21;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.006 c