Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Параметры в ADOQuery

6
05 февраля 2007 года
George
4.1K / / 05.01.2007
Забил я на Database Desktop. Перешёл на Access. Ошибок нет, но и записей тоже нет.
Возьмём параметр n. По умолчанию он равен 16.01 (дата). При выполнении программы определяется текущая дата и жахается запись по дате. Так вот когда значение задано по умолчанию - всё ОК. Когда значение параметра определяется по ходу программы - NO! Этот параметр указывает на текстовое поле в Acceess'е. Какой у него должен быть тип?
9.5K
05 февраля 2007 года
Borgir
97 / / 20.12.2006
Ниче не понял. Поподробней пожалуйста. :)
6
06 февраля 2007 года
George
4.1K / / 05.01.2007
Ну прога - планировщик. При запуске определяет текущую дату (год отбрасывается). Эту дату записываем в параметр n (по умолчанию 16.01 например) и по этому параметру прога отображает записи на данную дату. При занчении по умолчанию всё показывается, а когда значение параметра меняется, то всё, приехали.

Вообще если есть у кого ссылка на книжку, где подробно про эти параметры, киньте, пжалста.
303
07 февраля 2007 года
makbeth
1.0K / / 25.11.2004
Ты бы хоть сказал, что происходит при ненормальном поведении запроса - выскакивает исключение, неправильно обрабатывается запрос или вообще ничего не происходит. А то так тебе никто ничего не подскажет. В лучшем случае будет гадание на кофейной гуще...
6
07 февраля 2007 года
George
4.1K / / 05.01.2007
Ну это нормально...
Я уже сам разобрался. Оказывается - досадная мелочь:
Код:
with Form1.ADOQuery1 do
begin
  Parameters[0].Value:=n;  
  close;
  SQL.Clear;
  SQL.Add('Select Reports');
  SQL.Add('From Reports');
  SQL.Add('Where Date=:Dat');
  Active:=True;
  open;
end;

Значение параметра присваивалось перед созданием запроса, а надо после:
Код:
with Form1.ADOQuery1 do
begin
  close;
  SQL.Clear;
  SQL.Add('Select Reports');
  SQL.Add('From Reports');
  SQL.Add('Where Date=:Dat');
  Parameters[0].Value:=n;
  Active:=True;
  open;
end;
6
10 февраля 2007 года
George
4.1K / / 05.01.2007
Вопрос тоже по параметрам!
Код:
Ini:=TIniFile.Create(IniFileName);
Sis:=Ini.ReadInteger('User','Sis',0);
with Form1.ADOQuery1 do
begin
  SQL.Clear;
  SQL.Add('Select Reports');
  SQL.Add('From Reports');
  SQL.Add('Where Sis<=:Sis');
  Parameters[0].Value:=Sis;
  Active:=True;
  open;
end;

Ошибка:
Цитата:
Отсутствует значение для одного или нескольких параметров.



Всё перепроверил - ничего не получается. Чо делать?

309
11 февраля 2007 года
el scorpio
1.1K / / 19.09.2006
Не рекомендуется делать имена параметров, совпадающими с именами полей - я обычно везде ставлю префик "p" (pSis).

И ещё - не знаю, баг или как, но если использовать одно имя параметра несколько раз в тексте запроса, то создаётся несколько параметров с одинаковыми именами. А значение будет только у одного :(
6
12 февраля 2007 года
George
4.1K / / 05.01.2007
Интересненько!

Подожди, а в каком смысле несколько раз? Как их можно несколько раз использовать?
309
13 февраля 2007 года
el scorpio
1.1K / / 19.09.2006
Столкнулся с загадочным глюком. Писал запрос типа
 
Код:
select ЧТО_ТО from ТАБЛИЦА
where (ПОЛЕ1 = :pValue) and (ПОЛЕ2 = :pValue)

Присвоил значение параметру pValue, а всё равно ошибка. Начал отлаживать и обнаружил два параметра, с одинаковым именем. Но первый имел значение, а у второго оно осталось неопределённым.
Работал через ADO с какой-то сетевой БД. Впредь стараюсь подобных ситуаций избегать.
6
13 февраля 2007 года
George
4.1K / / 05.01.2007
Изменил я имена параметров, как ты посоветовал. Всё равно орёт ошибу.
309
14 февраля 2007 года
el scorpio
1.1K / / 19.09.2006
А обязательно делать совпадение имён поля и таблицы???
6
14 февраля 2007 года
George
4.1K / / 05.01.2007
Изменил имя таблицы. Всё равно ошибка.
6
17 февраля 2007 года
George
4.1K / / 05.01.2007
Разобрался я с этой ошибкой. Не смейтесь пожалуйста, но имена полей в таблице и в запросе не совпадали. Глупо, я знаю
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог