![]() |
|
|
![]()
|
|
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
Лежат, значит, у меня на форме всякие DB-компоненты: DBMemo, DBDateEdit, DBEdit и т.п. Если подключать к ним AdoQuery, то через эти компоненты датасет запроса можно редактировать, и, соответственно, редакции сохраняются в таблице. А вот если подключить TIBQuery, то редактирование невозможно: эти компоненты делаются как будто read-only. Данные-то отображаются, но вот редактировать их не получается. В запросах просто выбраны все записи, т.е. select * from ....
Вопрос: ы? -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| Bose |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1458 Регистрация: 5.3.2005 Где: Riga, Latvia Репутация: 9 Всего: 51 |
Данкинг, IBQUery сам по себе позволяет только читать данные.
Если хочешь редактировать, добавь TIBUpdateSQL, но он имеет некоторые ограничения(например, в запросах нельзя использовать хранимые процедуры). Лучше юзай TIbDataset. |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
Добавил... А как с ним работать-то? Добавлено через 1 минуту и 5 секунд Ну так а запросы как я в него впихну... Это сообщение отредактировал(а) Данкинг - 26.7.2009, 23:45 -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| Bose |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1458 Регистрация: 5.3.2005 Где: Riga, Latvia Репутация: 9 Всего: 51 |
Смотри свойства UpdateSQL, DeleteSQL, InsertSQL и RefreshSQL. А также прочитай это - там есть ответы на все твои вопросы(даже ещё не заданные). |
|||
|
||||
| Данкинг |
|
||||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
Ну так обычные стринглисты...
ibase.ru не открывался как вчера, так и сегодня не открывается. Или это только у меня?
Но в любом случае DbMemo неактивным остаётся. В общем, проще кинуть обычные Memo и вручную апдейтить. Это сообщение отредактировал(а) Данкинг - 27.7.2009, 11:27 -------------------- There's nothing left but silent epitaphs. |
||||
|
|||||
| former |
|
|||
![]() MEMS Expert ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1166 Регистрация: 1.3.2006 Где: Россия Репутация: 7 Всего: 17 |
Данкинг, используй IBDataSet. Заполни SelectSQL, UpdateSQL, DeleteSQL, InsertSQL и RefreshSQL. По двойному клику появится список полей. В контекстном меню выбери Add all fields. Кидаешь на форму DataSource (привязываешь его к IBDataSet) и DBMemo (указываешь DataSource и FieldName). Это сообщение отредактировал(а) former - 27.7.2009, 12:45 -------------------- Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами. |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
Ну а пересортировывать, выбирать по условию? ИМХО, с Датасетом - извращение не меньшее, чем внесение изменений вручную, как я хотел. Я просто думал, как-то с IBQuery можно сиё проделать. Впрочем, с IBDataSet редактрование тоже отключено, как и с IBQuery. Это сообщение отредактировал(а) Данкинг - 27.7.2009, 15:20 -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
Смотря какой запрос
|
|||
|
||||
| former |
|
||||
![]() MEMS Expert ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1166 Регистрация: 1.3.2006 Где: Россия Репутация: 7 Всего: 17 |
Используй фильтры в IBDataSet. А сортировку средствами таблицы организуй, например.
Чего, чего? Уже несколько раз написали, редактируй свойства SelectSQL, UpdateSQL, DeleteSQL, InsertSQL и RefreshSQL. -------------------- Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами. |
||||
|
|||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
Да на форуме уже есть темы про редактируемые/нередактируемые НД.
|
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
Н-да. -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| Bose |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1458 Регистрация: 5.3.2005 Где: Riga, Latvia Репутация: 9 Всего: 51 |
сначала включи мозги, и только потом запускай Delphi и всё получится. Проблема-то тривиальная.
Всё возможно. И с датасетом и с IBQuery + IBUpdateSQL. Смотри у IBQuery свойство UpdateObject (кажется). Свойства UpdateSQL, DeleteSQL, InsertSQL и RefreshSQL заполнять придётся в любом случае. Точнее, достаточно заполнить только те, которые нужны. |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
На сколько я помню, то когда-то в справке вычитал, что при вызове IBQuery.Update или IBQuery.Edit срабатывает код у IBQuery.IBUpdateSQL.SQL
|
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |