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

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

Работа с ADOQuery [D7, XP]


Владимир ©   (2008-07-05 10:16:00) 

У меня возникла проблема при работе с компонентом ADOQuery. Мне необходимо по запросу из базы данных вытащить список записей. Если этот список пуст, я добавляю в него определенную запись и сохраняю в базу. При использовании ADOTable все проходит нормально. Но ADOQuery выдает ошибку, причем внутри своего рабочего модуля (ADODB)! Говорит, "dataset not in edit or insert mode"! Я подумал: может его как-нибудь перевести в режим записи? Только как именно, так в справке и не нашел...


Нат   (2008-07-28 06:58:00) [1]

Они, конечно разные, однако у TStrings есть свойства, для доступа ко всем строкам сразу.
Опять же, различие Add( MySQLString) и commandtext:=MySQLString - не меняет смысла.
Суть одна, но ТАДОДатасет удобнее, ИМХО.
Деревья разные, а лес один.


Anatoly Podgoretsky   (2008-07-27 14:12:00) [2]

> Ega23  (27.07.2008 13:43:16)  [16]

А ты объясни это любителям Query


Ega23   (2008-07-27 13:43:00) [3]


> Свойства TADODataSet.CommandText и TADOQuery.SQL совершенно
> похожи


Для тех, кто в танке: WideString и TStrings - абсолютно разные вещи.


гость   (2008-07-26 19:12:00) [4]


> Говорит, "dataset not in edit or insert mode"! Я подумал:
>  может его как-нибудь перевести в режим записи?

form1.ADOQuery1.Edit;


Плохиш   (2008-07-26 17:51:00) [5]


> Нат   (26.07.08 02:58) [13]
> Свойства TADODataSet.CommandText и TADOQuery.SQL совершенно
> похожи

Чем похожи?


Нат   (2008-07-26 02:58:00) [6]

Свойства TADODataSet.CommandText и TADOQuery.SQL совершенно похожи, а возможностей у TADODataSet значительно больше.


Ega23   (2008-07-25 09:41:00) [7]


> аналог TADOQuery.SQL


Вообще не похожи.


Нат   (2008-07-25 06:06:00) [8]

Использую TADODataSet: ADODSet.Edit; ADODSet.Post;
ADODSet.CommandText:='текст запроса возвращающего записи -  Select ...'
аналог TADOQuery.SQL


MsGuns   (2008-07-05 15:55:00) [9]

Приведи тескт запроса (TADOQuery.SQL)


Плохиш   (2008-07-05 14:35:00) [10]


> Я подумал: может его как-нибудь перевести в режим записи?
>  Только как именно, так в справке и не нашел...

Хм, стоит почитать справку поставляемую с D7.


Тын-Дын   (2008-07-05 14:15:00) [11]


> Владимир   (05.07.08 10:22) [3]
>
>
> > ADOQuery предназначен для выполнения запросов, вот и выполняй
> > запрос на вставку
>
>
> То есть, ты предлагаешь юзать именно запрос? Я такого никогда
> не использовал. Можешь синтаксис показать?
>
> Мне тогда непонятно: ADOQuery имеет, как и ADOTable методы
> Append, Post, Delete и т.д. зачем они там, если они не пашут?
>  По крайней мере, в обычном режиме?


Почему это происходит, и о работе с базами данных лучше сначала почитать книги.
На большинство своих вопросов ты там и найдешь ответы - по каждому из них по несколько странгиц исписано.
Ты предлагаешь и здесь повторять страницы из учебников?


Kostafey   (2008-07-05 13:33:00) [12]

> [3] Владимир   (05.07.08 10:22)
> Мне тогда непонятно: ADOQuery имеет, как и ADOTable методы
> Append, Post, Delete и т.д. зачем они там, если они не пашут?
> По крайней мере, в обычном режиме?

Потише только, не надо во весь голос ругаться ладно?
А то мастера придут -поколотят, у них ADOQuery, ADOTable ругательными считаются :)
Переводим все на TADODataSet.

А вообще > [1] Palladin ©   (05.07.08 10:18)
все уже сказал.


Anatoly Podgoretsky   (2008-07-05 12:08:00) [13]

> Palladin  (05.07.2008 10:30:05)  [5]

Еще рано, еще не все другие возможности испробованы.


Palladin   (2008-07-05 10:30:00) [14]


> Владимир   (05.07.08 10:22) [3]

тебе вообще не кажется, что показать нужно как ты делаешь с TADOTable и как ты делаешь с TADOQuery ?


Поросенок Винни-Пух   (2008-07-05 10:23:00) [15]

Тебе пора открыть демо проекты из папки Db


Владимир   (2008-07-05 10:22:00) [16]


> ADOQuery предназначен для выполнения запросов, вот и выполняй
> запрос на вставку


То есть, ты предлагаешь юзать именно запрос? Я такого никогда не использовал. Можешь синтаксис показать?

Мне тогда непонятно: ADOQuery имеет, как и ADOTable методы Append, Post, Delete и т.д. зачем они там, если они не пашут? По крайней мере, в обычном режиме?


Palladin   (2008-07-05 10:18:00) [17]

ADOQuery предназначен для выполнения запросов, вот и выполняй запрос на вставку


Поросенок Винни-Пух   (2008-07-05 10:18:00) [18]

Я подумал: может его как-нибудь перевести в режим записи?

Верно подумал.

Только как именно, так в справке и не нашел...

В мире vcl все делается вызовом методов и изменением свойств.


Наверх

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