Поиск:

Ответ в темуСоздание новой темы Создание опроса
> люди помогите с ошибкой- не знаю че делать! Что-то с BDE 
:(
    Опции темы
Anticler
Дата 13.6.2007, 17:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Помогите пожалуйста - диплом через неделю!!! smile 

У меня прога с базами данных. Ввел данные - работала нормально, потом дополнил данные - все пипец!

Суть такова:
Кнопка - при помощи SQL с условием вводит суммы в таблицу.
Потом начала вылетать ошибка:
"Access violation at address 4BE34726 in module 'IDAPI32.DLL'. Read of address 00000000."

Прверял по строкам вылетала на Query.Open; 
А теперь вылетает на Query.Clear;

IdAPI32.dll - библиотека из BDE.
Даже незнаю, что и делать. На всех нормальных компах такая же фигня. smile 
PM MAIL   Вверх
Anark1
Дата 14.6.2007, 07:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 622
Регистрация: 15.12.2006
Где: RF -> Moscow

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



Код в студию


--------------------
Enjoy yourself, still you can...;)

user posted image

user posted image
PM MAIL ICQ   Вверх
pseud
Дата 14.6.2007, 11:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: 16
Всего: 40



если Query у тебя выполняет не запрос SELECT а операции ISERT UPDATE DELETE
то не Open, а ExecSQL.

возможно у Query стоит убрать RequestLive.

а вообще


Цитата(Anark1 @  14.6.2007,  07:30 Найти цитируемый пост)
Код в студию


поддерживаю


--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
Anticler
Дата 14.6.2007, 15:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



ВОТ КОД

Query1.Close;
Query1.SQL.Clear;
Query1.SQL.add('SELECT COUNT( id ) as kol FROM "admn.DB" Adm ');
Query1.SQL.add('WHERE (Mes ='+ IntToStr( DBGridEh2.Col-4)+' ) AND (Adm."Year" = '+ ComboBox2.Text+')');

>Query1.Open;     // ************сначала здесь выбивало



Query1.Close;

>Query1.SQL.Clear;   // ************ А ТЕПЕРЬ ЗДЕСЬ 

Query1.SQL.add('SELECT COUNT( Adm.NorDok ) KOL');
Query1.SQL.add('FROM "admn.DB" Adm ');
Query1.SQL.add('   INNER JOIN "NorDocN.db" Nordocn   ON  (Adm.NorDok = Nordocn.Doc)');
Query1.SQL.add('   INNER JOIN "NorDocC.db" Nordocc   ON  (Nordocn.Id_cat = Nordocc.Id) ');
Query1.SQL.add('WHERE  (Adm."Year" = :yr) and (Adm.Mes = :ms)   ');
Query1.SQL.add('GROUP BY Nordocc.Id, Nordocc.Id ');
Query1.Prepare;
 Query1.ParamByName('yr').AsInteger := StrToInt( ComboBox2.text);
 Query1.ParamByName('ms').AsInteger := DBGridEh2.Col-4;
Query1.Open;

Добавлено через 2 минуты и 1 секунду
В Query ничего не выставлял все опции по умолчанию (кроме алиаса)
PM MAIL   Вверх
Rodman
Дата 14.6.2007, 15:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

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



а так?? 
Цитата(Anticler @  14.6.2007,  14:18 Найти цитируемый пост)
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.add('SELECT COUNT( id ) as kol FROM "admn.DB" Adm ');
Query1.SQL.add('WHERE (Mes ='+ IntToStr( DBGridEh2.Col-4)+' ) AND (Adm."Year" = '+ ComboBox2.Text+')');

>Query1.Open;

Код

Query1.SQL.Clear;
Query1.SQL.add('SELECT COUNT( id ) as kol FROM "admn.DB" Adm ');// "admn.DB" Adm  - что это такое (Adm)???
Query1.SQL.add('WHERE (Mes =:Prm1) AND (Adm.Year = :Prm2)');
Query1.ParamByName('Prm1').Value :=DBGridEh2.Col-4;
Query1.ParamByName('Prm2').Value :=ComboBox2.Text;
Query1.Open;



Цитата(Anticler @  14.6.2007,  14:18 Найти цитируемый пост)
Query1.Close;

>Query1.SQL.Clear;   // ************ А ТЕПЕРЬ ЗДЕСЬ 

Query1.SQL.add('SELECT COUNT( Adm.NorDok ) KOL');
Query1.SQL.add('FROM "admn.DB" Adm ');
Query1.SQL.add('   INNER JOIN "NorDocN.db" Nordocn   ON  (Adm.NorDok = Nordocn.Doc)');
Query1.SQL.add('   INNER JOIN "NorDocC.db" Nordocc   ON  (Nordocn.Id_cat = Nordocc.Id) ');
Query1.SQL.add('WHERE  (Adm."Year" = :yr) and (Adm.Mes = :ms)   ');
Query1.SQL.add('GROUP BY Nordocc.Id, Nordocc.Id ');
Query1.Prepare;
 Query1.ParamByName('yr').AsInteger := StrToInt( ComboBox2.text);
 Query1.ParamByName('ms').AsInteger := DBGridEh2.Col-4;
Query1.Open;


Код

Query1.Close;
Query1.SQL.Clear;   // ************ А ТЕПЕРЬ ЗДЕСЬ - что говорит - конкретно?
Query1.SQL.add('SELECT COUNT( Adm.NorDok ) KOL');
Query1.SQL.add('FROM "admn.DB" Adm ');
Query1.SQL.add('   INNER JOIN "NorDocN.db" Nordocn   ON  (Adm.NorDok = Nordocn.Doc)');
Query1.SQL.add('   INNER JOIN "NorDocC.db" Nordocc   ON  (Nordocn.Id_cat = Nordocc.Id) ');
Query1.SQL.add('WHERE  (Adm.Year = :yr) and (Adm.Mes = :ms)   ');
Query1.SQL.add('GROUP BY Nordocc.Id, Nordocc.Id ');
Query1.Prepare;
 Query1.ParamByName('yr').AsInteger := StrToInt( ComboBox2.text);
 Query1.ParamByName('ms').AsInteger := DBGridEh2.Col-4;
Query1.Open;


Adm."Year" - зачем кавычки?


Цитата(Anticler @  14.6.2007,  14:18 Найти цитируемый пост)
В Query ничего не выставлял все опции по умолчанию (кроме алиаса) 

ну хоть ConnectionString настроил!


Это сообщение отредактировал(а) Rodman - 14.6.2007, 15:44
PM MAIL WWW Skype GTalk YIM MSN   Вверх
pseud
Дата 14.6.2007, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: 16
Всего: 40



Цитата(Rodman @  14.6.2007,  15:35 Найти цитируемый пост)
Query1.SQL.add('SELECT COUNT( id ) as kol FROM "admn.DB" Adm ');// "admn.DB" Adm  - что это такое (Adm)???


Rodman, ты меня удивил.

FROM "admn.DB" Adm  это тоже самое, что и FROM table_very_long_name AS t

например
Код

SELECT
  t.id,
  t.name
FROM
  table_very_long_name AS t



--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
Anticler
Дата 14.6.2007, 18:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(Rodman @  14.6.2007,  15:35 Найти цитируемый пост)
а так?? 


Уже пробовал и с параметрами и без них - все тоже самое!


Цитата(Rodman @  14.6.2007,  15:35 Найти цитируемый пост)
Adm."Year" - зачем кавычки?


А кавычки я из QueryBuilder взял. 
И потом все равно до туда не доходит  ошибка выскакивает на Query1.SQL.Clear; а может и на Close;

Цитата(Rodman @  14.6.2007,  15:35 Найти цитируемый пост)
"admn.DB" Adm  - что это такое (Adm)???


Это псевдоним (типа sum(field) as name)


Цитата(Rodman @  14.6.2007,  15:35 Найти цитируемый пост)
ну хоть ConnectionString настроил!


ConnectionString - что это?



PS : Я использую парадокс.
PM MAIL   Вверх
neat
Дата 14.6.2007, 19:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Anticler, а не пробовал второй запрос формировать в другом Query? Это так, для проверки.
PM MAIL   Вверх
Anticler
Дата 15.6.2007, 08:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Пробовал!
PM MAIL   Вверх
Rodman
Дата 15.6.2007, 08:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

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



Цитата(Anticler @  14.6.2007,  17:10 Найти цитируемый пост)
ConnectionString - что это?

строка подключения к базе!!! у тебя вообще подключение как реализованно!!!
Цитата(pseud @  14.6.2007,  15:26 Найти цитируемый пост)
Rodman, ты меня удивил.

ну так в каждой СУБД свои нюансы, я не увидел as и вот засомневался!!! Всего ведь знать нельзя!!!
Цитата(Anticler @  14.6.2007,  17:10 Найти цитируемый пост)
А кавычки я из QueryBuilder взял. 

ну так а СУБД какая?? или я не увидел?
PM MAIL WWW Skype GTalk YIM MSN   Вверх
pseud
Дата 15.6.2007, 08:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: 16
Всего: 40



Rodman
Цитата(Anticler @  14.6.2007,  18:10 Найти цитируемый пост)
PS : Я использую парадокс.


поэтому человек использует BDE
поэтому не стоит заморачиваться на ConnectionString (ADO)


Цитата(Anticler @  14.6.2007,  15:18 Найти цитируемый пост)

Query1.Close;
>Query1.SQL.Clear;   // ************ А ТЕПЕРЬ ЗДЕСЬ 


вообще не понимаю как такое возможно

Цитата(Anticler @  14.6.2007,  18:10 Найти цитируемый пост)
ошибка выскакивает на Query1.SQL.Clear; а может и на Close;


используй BreakPoint и определись таки на что. Но ни в одном ни в другом случае ошибки быть не должно.




--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
Anticler
Дата 16.6.2007, 13:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(pseud @  15.6.2007,  08:49 Найти цитируемый пост)
используй BreakPoint и определись таки на что. Но ни в одном ни в другом случае ошибки быть не должно.


Курсор стоит на Query1.SQL.Clear; 
PM MAIL   Вверх
Rodman
Дата 16.6.2007, 14:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

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



а если не чистить и делать так
Код

Query1.Close;
//Query1.SQL.Clear;   // ************ А ТЕПЕРЬ ЗДЕСЬ - что говорит - конкретно?
Query1.SQL.Text:='SELECT COUNT( Adm.NorDok ) KOL';//add('SELECT COUNT( Adm.NorDok ) KOL');
Query1.SQL.add('FROM "admn.DB" Adm ');
Query1.SQL.add('   INNER JOIN "NorDocN.db" Nordocn   ON  (Adm.NorDok = Nordocn.Doc)');
Query1.SQL.add('   INNER JOIN "NorDocC.db" Nordocc   ON  (Nordocn.Id_cat = Nordocc.Id) ');
Query1.SQL.add('WHERE  (Adm.Year = :yr) and (Adm.Mes = :ms)   ');
Query1.SQL.add('GROUP BY Nordocc.Id, Nordocc.Id ');
Query1.Prepare;
 Query1.ParamByName('yr').AsInteger := StrToInt( ComboBox2.text);
 Query1.ParamByName('ms').AsInteger := DBGridEh2.Col-4;
Query1.Open;

PM MAIL WWW Skype GTalk YIM MSN   Вверх
Anticler
Дата 16.6.2007, 21:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Люди заработало !!! smile 

Причем, абсолютно ничего не менял !!!

Даже не знаю что могло повлиять. Неделю парился  и тут вдруг работает без ошибок. 

Запускаю старый ехе - эта ошибка, а новый только что откомпилированный - как часики!!

Хотя странно все это... я ведь на многих компах его копилировал а результата небыло. 

Скорее всего глюк компилятора Delphi 7.

Надеюсь болше этой ошибки я не увижу.

И спасибо всем за то что попытались помочь мне (все ваши варианты испробовал).


PS: И тему можно закрыть чтоб глаза не мазолила
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "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.0948 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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