Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.03.25;
Скачать: [xml.tar.bz2];

Вниз

почему на второй форме параметический запрос не работает   Найти похожие ветки 

 
sipsik   (2007-03-05 12:26) [0]

Здравствуйте!
Подскажите, пожалуйста, почему у меня на второй форме не работает параметрический запрос (пишет, что нет вообще параметра в ADOQuery, хотя он есть), а на первой (главной) форме он же работает?


 
Reindeer Moss Eater ©   (2007-03-05 12:29) [1]

пишет, что нет вообще параметра в ADOQuery, хотя он есть

А ты верь тому, что он (оно) пишет.


 
sipsik   (2007-03-05 12:31) [2]

Я его создала так же, как создавала параметр на первой форме, свойства те же, но его для программы все равно нет.
В чем ошибка может быть?


 
Reindeer Moss Eater ©   (2007-03-05 12:33) [3]

но его для программы все равно нет

Это главное.
Для программы его нет. Этим все сказано.


 
ЮЮ ©   (2007-03-05 12:33) [4]

> а на первой (главной) форме он же работает?

Положи работатающий в DataModule и используй его на обеих формах (если это действительно он же). Самое главное, положи туда же ADOConnection и используй его для всех ADOQuery, где бы они не находились


 
Плохиш ©   (2007-03-05 12:35) [5]


> sipsik   (05.03.07 12:31) [2]
> Я его создала так же, как создавала параметр на первой форме

А чем не нравиться, как параметры ADOQuery создаёт?


 
sipsik   (2007-03-05 12:40) [6]

при обращении
ADOQuery2.Parameters[0].Value
пишет, что list out of bounds,
а при обращении
ADOQuery2.Parameters.ParamByName(kategor).Value
на kategor пишет, что undecleared identifier


 
Плохиш ©   (2007-03-05 12:43) [7]


> sipsik   (05.03.07 12:40) [6]

Так и будем филосовствовать или всё-таки соизволите представить работающий и неработающий код и запрос?


 
MsGuns ©   (2007-03-05 12:46) [8]

>?sipsik   (05.03.07 12:40) [6]

А код, содержащий текст запроса, можно посмотреть ?
Такое впечатление, что "параметры" в запросе указаны без "волшебного" символа ;)


 
ЮЮ ©   (2007-03-05 12:48) [9]

> ADOQuery2.Parameters.ParamByName(kategor).Value
> на kategor пишет, что undecleared identifier

Напиши
 ADOQuery2.Parameters.ParamByName("kategor").Value
если параметр так называется, только всё-равно отхватишь AV

Текст запроса  ADOQuery2 - в студию


 
sipsik   (2007-03-05 12:50) [10]

Сейчас напишу. Не успеваю.

Вот работающий на первой форме:

ADOQuery1.Parameters[0].Value:=date;
d:=datetostr(date);
QuerySQL5 := "SELECT * FROM [заказ на производство] where "Дата производства"<:data and "Реализация"=false";
ADOQuery1.SQL.Add(QuerySQL5);
ADOQuery1.Open;
ADOQuery1.Active:=true;


Вот неработающий на второй форме:

ADOQuery2.Parameters[0].Value:=ComboBox1.Text;
querySQL:=querySQL+" where "название категории"<:krit";
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add(querySQL);
ADOQuery2.Active;
ADOQuery2.Open;


 
Плохиш ©   (2007-03-05 12:53) [11]


> sipsik   (05.03.07 12:50) [10]

Руки бы вырвал за бездумное топтание кнопок, хоть бы почитала сначала чего.

d:=datetostr(date);
QuerySQL5 := "SELECT * FROM [заказ на производство] where "Дата производства"<:data and "Реализация"=false";
ADOQuery1.SQL.Text := QuerySQL5;
ADOQuery1.Parameters[0].Value:=date;
ADOQuery1.Open;


> ADOQuery2.Active;
> ADOQuery2.Open;

А это что - "масло масляное"?


 
ЮЮ ©   (2007-03-05 12:57) [12]

> ADOQuery2.Parameters[0].Value:=ComboBox1.Text;
> querySQL:=querySQL+" where "название категории"<:krit";
> ADOQuery2.SQL.Clear;
> ADOQuery2.SQL.Add(querySQL);
> ADOQuery2.Active;
> ADOQuery2.Open;

Сначала следует формировать текст запроса, а лишь затем заполнять параметры


> ADOQuery1.SQL.Add(QuerySQL5);

Теперь у тебя в SQL несколько запросов и выполняется (хотя это и странно) первый из них

> ADOQuery2.SQL.Clear;
> ADOQuery2.SQL.Add(querySQL);

А здесь хоть правильно с точки зрения формирования запроса


 
sipsik   (2007-03-05 12:59) [13]

что вы имеете в виду, извините, мне трудно понять вас.
что мне исправить, чтобы на второй форме тоже заработал параметрический запрос?
как только я сажусь за программу, один ребенок начинает играть в индейцев, а второго выгоняют из школы за второй обувью


 
sipsik   (2007-03-05 13:00) [14]

предыдущий пост - это Плохишу
а, ну теперь поняла, сейчас попробую


 
sipsik   (2007-03-05 13:09) [15]

ну вот так тоже не видит параметр

QuerySQL:="select * from [читатели] ";
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add(querySQL);
ADOQuery2.Parameters[0].Value:=ComboBox1.Text;
querySQL:=querySQL+" where "название категории"<:krit";
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add(querySQL);
ADOQuery2.Active;
ADOQuery2.Open;

сначала сформировала текст запроса, потом - параметры. но говорит, нет параметра


 
Плохиш ©   (2007-03-05 13:11) [16]

Kinder, K&#252;che, Kirche


 
ЮЮ ©   (2007-03-05 13:13) [17]

> а, ну теперь поняла, сейчас попробую

похоже, индейцы скальп сняли.

Еще нет, но лучше бы они сделали это:

ADOQuery2.SQL.Text :=
 "select * from [читатели] " +
 "where "название категории"<:krit";
 // cначала сформировали ВЕСЬ запрос, всякая модификация сбросит нафиг все параметрв

ADOQuery2.Parameters[0].Value:=ComboBox1.Text;
 // заполнили все параметры, сколько их есть
ADOQuery2.Open;
 // открыли


 
Плохиш ©   (2007-03-05 13:13) [18]

Каждое изменение запроса пересоздаёт список параметров.

PS. Для желающих сделать уточнение, подумайте, а знает ли она о том свойстве.


 
sipsik   (2007-03-05 13:20) [19]

Сразу говорю, чтобы не гадали: раньше я об этом свойстве не знала.
Я же не профессионал в этом вопросе, в первый раз делаю. Поэтому и вопросы в разделе "Начинающим".
А Вам, ЮЮ, большое спасибо, все получилось


 
ЮЮ ©   (2007-03-05 13:25) [20]

> А Вам, ЮЮ, большое спасибо, все получилось

Кстати, если первый запрос и "работает", но с большой долей вероятности - неправильно. Передклвйте его точно так же


 
sipsik   (2007-03-05 13:32) [21]

Да, спасибо.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.03.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.04 c
2-1172746478
Mashenka_84
2007-03-01 13:54
2007.03.25
создание файла


4-1163097625
Shopot
2006-11-09 21:40
2007.03.25
Прием/передача данных по com порту.


15-1172719059
Slider007
2007-03-01 06:17
2007.03.25
С днем рождения ! 29 февраля


15-1172492815
pavel_guzhanov
2007-02-26 15:26
2007.03.25
Подскажите, в чем может быть проблема?


11-1151155887
AlexanderMS
2006-06-24 17:31
2007.03.25
Ошибка: unit "xxx" was compiled with different version of "yyy".





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский