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

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

ADO + Ms SQL Server [D7, XP]


Steep ©   (2006-11-20 11:35:00) 

Я вчера долго и упорно читал про работу с базами данных, но не понял одну весчь..
Если у меня на форме ADOconnection, ADOQuery, Table, ADOsource (или просто source...) вобщем при запросе
ADOQuery.SQL.Clear;
ADOQuery.SQL.Append(
 'SELECT * FROM Table WHERE Param='+IntToStr(Edit1.text)
 );
ADOQuery.Open;

это выводит в таблицу (Table) необходимые поля, значения
но как вывести необходимый параметр в переменную?
я пробовал вытащить из таблицы - но это паревно есть каке-нить другие варианты?
т.е.
var s: string;
s:=??


Steep   (2006-11-20 12:09:00) [1]


> s := AdoQuery.Fields[0].asString;

Еще раз большое спасибо!

> Правда вышесказанное противоречит тексту запроса 'SELECT
> * FROM Table ...'

* - это не все поля - просто для примера :) (там по идее Cost - т.е. стоимость :)


Steep   (2006-11-20 12:06:00) [2]

а приравнивать куда?

> Матчасть

это математическая часть?

> читай еще раз, короче

да время поджимает, но еще почитаю :)
Большое спасибо за ответы!

PS. пока разбирался отпали многие вопросы (но убил 5 часов)


ЮЮ   (2006-11-20 12:04:00) [3]

по запросу должно выдать (там число неповторяющееся) одну запись содержащую поле с числом

s := AdoQuery.Fields[0].asString;

Правда вышесказанное противоречит тексту запроса 'SELECT *FROM Table ...'


clickmaker   (2006-11-20 11:54:00) [4]


> что сие означает? (насколько я понял заполнение таблицы?)

Таблица - это Table в твоем запросе. Она уже заполнена, если ты пытаешься от нее что-то поиметь.
ADOQuery выполняет запрос к этой таблице и возвращает набор данных. Его можно усечь используя where, фильтр то бишь или условие.
FieldByname('FieldName').AsString - получение конкретного значения из конкретного поля этого набора данных, в текущей записи.
Матчасть читай еще раз, короче


Steep   (2006-11-20 11:52:00) [5]

блин вставил неотуда.. (это я писал :)


Делфи   (2006-11-20 11:51:00) [6]

по запросу должно выдать (там число неповторяющееся) одну запись содержащую поле с числом
впрос в том как можно ее получить не кидая в таблицу..
т.е. сразу в переменную.. (надеюсь понятно)

> AdoQuery.Fields[<индекс поля>].asString;
>  AdoQuery.FieldByName(<имя поля>).asString;

что сие означает? (насколько я понял заполнение таблицы?)


ЮЮ   (2006-11-20 11:46:00) [7]

Необходимый параметр - это что?
Если поле текущей записи, то
 AdoQuery.Fields[<индекс поля>].asString;
 AdoQuery.FieldByName(<имя поля>).asString;


Наверх

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