Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2009, 15:52   #1
DS75
Пользователь
 
Аватар для DS75
 
Регистрация: 20.04.2009
Сообщений: 50
По умолчанию ParamByName в Query

Добрый день !
У меня постоянно вылезает ошибка "Undeclare identifier: 'ParamByName'"
Код:
var RSchet: integer;
...
ADOQuery6.SQL.Add('SELECT ... WHERE Schet = :Sch');
ADOQuery6.ParamByName('Sch').AsInteger := RSchet.AsInteger;
ADOQuery6.Open;
Сверялся, вроде все правильно. Не пойму почему ругается на ParamByName ? Он вроде стандартный же ?

Последний раз редактировалось DS75; 03.06.2009 в 16:02.
DS75 вне форума Ответить с цитированием
Старый 03.06.2009, 16:01   #2
soleil@mmc
SQL-коддинг
Участник клуба
 
Регистрация: 16.01.2009
Сообщений: 1,192
По умолчанию

...Parameters.ParamByName..
soleil@mmc вне форума Ответить с цитированием
Старый 03.06.2009, 16:04   #3
Andre1723
Пользователь
 
Аватар для Andre1723
 
Регистрация: 17.02.2008
Сообщений: 74
По умолчанию

Попробуйте так:
Код:
ADOQuery6.SQL.Add('SELECT ... WHERE Schet = :Sch');
ADOQuery6.Params.ParamByName('Sch').AsInteger := RSchet.AsInteger;
ADOQuery6.Open;

Последний раз редактировалось Andre1723; 03.06.2009 в 17:06.
Andre1723 вне форума Ответить с цитированием
Старый 03.06.2009, 19:43   #4
DS75
Пользователь
 
Аватар для DS75
 
Регистрация: 20.04.2009
Сообщений: 50
По умолчанию

Спасибо всем откликнувшимся на проблему !
После того как я заменил
ADOQuery6.ParamByName на
ADOQuery6.Parameters.ParamByName (к сожалению
ADOQuery6.Params.ParamByName не подошел)

Код:
var RSchet: integer;
...
ADOQuery6.SQL.Add('SELECT ... WHERE Schet = :Sch');
ADOQuery6.Parameters.ParamByName('Sch').AsInteger := RSchet.AsInteger;
ADOQuery6.Open;
У меня снова вылетает ошибка "Undeclare identifier: 'AsInteger'"
Наверное это заговор !
DS75 вне форума Ответить с цитированием
Старый 03.06.2009, 21:06   #5
soleil@mmc
SQL-коддинг
Участник клуба
 
Регистрация: 16.01.2009
Сообщений: 1,192
По умолчанию

Код:
ADOQuery6.Parameters.ParamByName('Sch').AsInteger := RSchet;
soleil@mmc вне форума Ответить с цитированием
Старый 03.06.2009, 21:52   #6
DS75
Пользователь
 
Аватар для DS75
 
Регистрация: 20.04.2009
Сообщений: 50
По умолчанию

Цитата:
Сообщение от soleil@mmc Посмотреть сообщение
Код:
ADOQuery6.Parameters.ParamByName('Sch').AsInteger := RSchet;
Извините забыл написать что ошибка "Undeclare identifier: 'AsInteger'" выскакивает при
Код:
ADOQuery6.Parameters.ParamByName('Sch').AsInteger := RSchet;
и при
Код:
ADOQuery6.Parameters.ParamByName('Sch').AsInteger := RSchet.AsInteger;
Следовательно ругается на первый AsInteger.
А ошибка "Left side cannot be assigned to" появляется при
Код:
ADOQuery6.Parameters.ParamByName('Sch') := RSchet.AsInteger;
и при
Код:
ADOQuery6.Parameters.ParamByName('Sch') := RSchet;
Возможно это важно! Переменной RSchet значение присваивается так:
Код:
var RSchet: integer;
...
RSchet:= ADOTable1.FieldByName('RSchet').AsInteger;
...
ADOQuery6.SQL.Add('SELECT ... WHERE Schet = :Sch');
ADOQuery6.Parameters.ParamByName('Sch').AsInteger := RSchet.AsInteger;
ADOQuery6.Open;
DS75 вне форума Ответить с цитированием
Старый 04.06.2009, 08:28   #7
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

Зачем вы пишете ADOQuery6.Parameters.ParamByName('S ch').AsInteger := RSchet.AsInteger;
Вам же soleil@mmc написал как надо
Цитата:
var RSchet: integer;
у вас же RSchet это переменная типа Integer а не какая то запись или другая структура, нет у ней никаких св-в

Последний раз редактировалось SERG1980; 04.06.2009 в 08:31.
SERG1980 вне форума Ответить с цитированием
Старый 04.06.2009, 12:37   #8
soleil@mmc
SQL-коддинг
Участник клуба
 
Регистрация: 16.01.2009
Сообщений: 1,192
По умолчанию

рекомендация топикстартеру:
берешь пишешь в коде
Код:
ADOQuery6.
сразу после точки нажимаешь CTRL+пробел и дальше выбираешь то что тебе нужно по порядку (даже приблизительно представляя что и как называется можно написать нормальный код)

либо лезь в сурсы адошных компонент и изучай иерархию классов
soleil@mmc вне форума Ответить с цитированием
Старый 04.06.2009, 13:55   #9
DS75
Пользователь
 
Аватар для DS75
 
Регистрация: 20.04.2009
Сообщений: 50
По умолчанию

Цитата:
Сообщение от SERG1980 Посмотреть сообщение
Зачем вы пишете ADOQuery6.Parameters.ParamByName('S ch').AsInteger := RSchet.AsInteger;
Вам же soleil@mmc написал как надо

у вас же RSchet это переменная типа Integer а не какая то запись или другая структура, нет у ней никаких св-в
В том то и дела, что варианте
Код:
ADOQuery6.Parameters.ParamByName('Sch').AsInteger := RSchet;
та же ошибка "Undeclare identifier: 'AsInteger'". Об этом я выше написал, когда все четыре возможных варианта перебрал.

Последний раз редактировалось DS75; 04.06.2009 в 13:58.
DS75 вне форума Ответить с цитированием
Старый 04.06.2009, 14:07   #10
DS75
Пользователь
 
Аватар для DS75
 
Регистрация: 20.04.2009
Сообщений: 50
По умолчанию

Цитата:
Сообщение от soleil@mmc Посмотреть сообщение
рекомендация топикстартеру:
берешь пишешь в коде
Код:
ADOQuery6.
сразу после точки нажимаешь CTRL+пробел и дальше выбираешь то что тебе нужно по порядку (даже приблизительно представляя что и как называется можно написать нормальный код)

либо лезь в сурсы адошных компонент и изучай иерархию классов
Спасибо, я тоже так пробовал. После написания
Код:
ADOQuery6.Parameters.ParamByName('Sch').
на букву А выдаются только эти четыре варианта
Код:
ADOQuery6.Parameters.ParamByName('Sch').Assign
Код:
ADOQuery6.Parameters.ParamByName('Sch').AppendChunk
Код:
ADOQuery6.Parameters.ParamByName('Sch').Attributes
Код:
ADOQuery6.Parameters.ParamByName('Sch').AfterConstruction
Никаких AsInteger В том то и беда ...
DS75 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
редактирование Query photozaz БД в Delphi 3 10.11.2008 19:10
Query artemavd БД в Delphi 1 24.08.2008 10:34
QUERY werser Помощь студентам 2 10.06.2008 19:13
Query mma БД в Delphi 5 17.02.2008 22:11