Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не исполняется запрос в коде, Acess Vilation 
:(
    Опции темы
bartram
Дата 25.7.2005, 10:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1606
Регистрация: 22.2.2004
Где: Russia, Samara

Репутация: нет
Всего: 29



Сабж!!
Делаю запрос:
Код

procedure TStatRegion.Button1Click(Sender: TObject);
begin
 sql1.Close;
sql1.SQL.Clear;
sql1.SQL.Add('SELECT rg.name, Count(cr.ID_Region)');
sql1.SQL.Add('FROM Corespondents AS cr LEFT JOIN Region AS rg ON cr.ID_Region=rg.ID');
sql1.SQL.Add('WHERE cr.ID_Contry = 1');
sql1.SQL.Add('GROUP BY rg.name');
sql1.SQL.Add('ORDER BY rg.name;');
sql1.Open;
end;

В Дизайн тайм всё работает, а в Run time нет smile
Подскажите что делать?


--------------------
В каждом из нас спит гений, но с каждым днем все крепче ;-)
bartram.ru
Twitter
user posted image 

PM MAIL ICQ   Вверх
DEER
Дата 25.7.2005, 13:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 749
Регистрация: 12.4.2005
Где: г. Рязань

Репутация: нет
Всего: 13



У меня была такая же проблема....
Я до сих пор грешу на саму Дельфю....
Я боролся с этим так: компилировал проект, а потом запускал экзесшку из под эксплорера, почему то так работало


--------------------
 
PM MAIL WWW ICQ MSN   Вверх
Bes
Дата 25.7.2005, 14:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 806
Регистрация: 8.12.2004

Репутация: 2
Всего: 7



во первых все таки не
sql1.Open;
а
sql1.active:=true;
smile
а во вторых в T-SQL-е не допускается такая конструкция Group by order by и нечего тут грешить на дельфю тут надо пользоваться СКУЛ командой having если я вас правильно понял конечно

PM MAIL   Вверх
Петрович
Дата 25.7.2005, 15:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1000
Регистрация: 2.12.2003
Где: Москва

Репутация: 6
Всего: 55



Цитата(Bes @ 25.7.2005, 15:43)
во первых все таки не
sql1.Open;
а
sql1.active:=true;

а во вторых в T-SQL-е не допускается такая конструкция Group by order by и нечего тут грешить на дельфю тут надо пользоваться СКУЛ командой having если я вас правильно понял конечно


По поводу Open и Active ты не прав. Оба варианта это по сути синонимы.

По поводу 'Group by order by' не скажу, точно не знаю. Но bartram утверждает что из дизайн-тайма такой запрос выполняется.

Цитата(bartram @ 25.7.2005, 11:51)
Сабж!!
Делаю запрос:
....
В Дизайн тайм всё работает, а в Run time нет 
Подскажите что делать?

А что значит "в Run time нет"? Так прямо и пишет "Не работаю"? smile

На всякий случай сразу спрошу: А ты компонент sql1-то создал?



--------------------
Все знать невозможно, но хочется
PM ICQ   Вверх
kobra
Дата 25.7.2005, 15:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 15.6.2005
Где: Грузия, Тбилиси

Репутация: 1
Всего: 9



Цитата(Bes @ 25.7.2005, 14:43)
а во вторых в T-SQL-е не допускается такая конструкция Group by order by и нечего тут грешить на дельфю тут надо пользоваться СКУЛ командой having если я вас правильно понял конечно
а причем тут having?
order by - сортировщик а
having - филтр.

PM MAIL   Вверх
Vit
Дата 25.7.2005, 15:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: 14
Всего: 207



Цитата(Bes @ 25.7.2005, 05:43)
во вторых в T-SQL-е не допускается такая конструкция Group by order by и нечего тут грешить на дельфю тут надо пользоваться СКУЛ командой having если я вас правильно понял конечно



Допускается.

Ошибку в студию! Код должен работать. Если не работает то причина в доступе к базе данных...


--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
bartram
Дата 25.7.2005, 20:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1606
Регистрация: 22.2.2004
Где: Russia, Samara

Репутация: нет
Всего: 29



Петрович, говорит Acess Volatiion и что какая то ошибка в модуле таком то... адресе таком то..., и в библиотеке MsJet4.0 smile


--------------------
В каждом из нас спит гений, но с каждым днем все крепче ;-)
bartram.ru
Twitter
user posted image 

PM MAIL ICQ   Вверх
Vit
Дата 25.7.2005, 21:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: 14
Всего: 207



sql1 - это какого типа переменная?


--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
Bes
Дата 26.7.2005, 08:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 806
Регистрация: 8.12.2004

Репутация: 2
Всего: 7



Цитата
Цитата (Bes @ 25.7.2005, 14:43)
а во вторых в T-SQL-е не допускается такая конструкция Group by order by и нечего тут грешить на дельфю тут надо пользоваться СКУЛ командой having если я вас правильно понял конечно

а причем тут having?
order by - сортировщик а
having - филтр.


точно точно сорри просто я такую проблему решил с помощью having правда group by order by так и не заработала

Цитата
По поводу Open и Active ты не прав. Оба варианта это по сути синонимы.

да мы тут просто с Бартрамом спорили по этому поводу это к прошлой теме, помоему эти два метода даже реализованы одинаково просто для меня логичнее для тэйбла использовать Опен Клозе а для Квери Актив типа подключаю отключаю а тэйбл он все время прицеплен поэтому я его открываю закрываю - так просто условности

P.S. будет интересно выяснить причину ошибки а то я так и не допер smile

Это сообщение отредактировал(а) Bes - 26.7.2005, 08:17
PM MAIL   Вверх
bartram
Дата 26.7.2005, 09:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1606
Регистрация: 22.2.2004
Где: Russia, Samara

Репутация: нет
Всего: 29



Цитата(Vit @ 25.7.2005, 21:25)
sql1 - это какого типа переменная?

Код

sql1: TADOQuery;



--------------------
В каждом из нас спит гений, но с каждым днем все крепче ;-)
bartram.ru
Twitter
user posted image 

PM MAIL ICQ   Вверх
Петрович
Дата 26.7.2005, 10:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1000
Регистрация: 2.12.2003
Где: Москва

Репутация: 6
Всего: 55



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



--------------------
Все знать невозможно, но хочется
PM ICQ   Вверх
kobra
Дата 26.7.2005, 10:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 15.6.2005
Где: Грузия, Тбилиси

Репутация: 1
Всего: 9



попробуи отклучить от sql1 TDataSource и правер что будет.

PM MAIL   Вверх
Bes
Дата 26.7.2005, 12:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 806
Регистрация: 8.12.2004

Репутация: 2
Всего: 7



у меня получилось действительновсе работает видно крепко я тормознул
испытывал на SQLServer2000 Delphi6 ADOQuery
запрос
Код

select count(*) as qnt, kod from MyTab1 group by kod order by qnt desc
все компоненты на форме но выключены после запуска нажимается кнопка в которой следующий код
Код

procedure TForm1.Button1Click(Sender: TObject);
begin
ADOConnection1.Connected:=true;
//ADOQuery1.Active:=true;
ADOQuery1.Open;
end;

попробовал и с Активе и с Опен все сработало

Это сообщение отредактировал(а) Bes - 26.7.2005, 12:53
PM MAIL   Вверх
SergeBS
Дата 26.7.2005, 13:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1111
Регистрация: 10.6.2005
Где: Владимир

Репутация: 11
Всего: 22



bartram
1. Попробуй то же самое запихнуть в ADOCommand, если сработает - ну понятно, что в корзину отправить smile
2. Допустим не сработало - версию MDAC в студию. А то я через ADOCommand еще и не такой изврат устраивал, и либо и в design и в run - везде работало, либо нигде (почему не работало - сам догадайся).

Да, Query у тебя подключен самостоятельно? Если нет - Connection ?

И конечно для страховки выполни запрос в Query Analyzer - там он проходит?
PM MAIL   Вверх
bartram
Дата 26.7.2005, 14:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1606
Регистрация: 22.2.2004
Где: Russia, Samara

Репутация: нет
Всего: 29



Цитата
bartram, а sql1 это компонент лежащий на форме, или ты его создаешь динамически?

Лежит на форме


Цитата(SergeBS @ 26.7.2005, 13:35)
Да, Query у тебя подключен самостоятельно? Если нет - Connection ?

Он подключён к коннекшн smile
Цитата
И вообще, постарайся сделать как можно более простую форму на которой можно продемонстрировать ошибку, и выложи ее сюда. В приведенном коде, вроде ничего криминального не видно.

Ладно сделаю
smile


--------------------
В каждом из нас спит гений, но с каждым днем все крепче ;-)
bartram.ru
Twitter
user posted image 

PM MAIL ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0615 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.