Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ошибка получения данных 
V
    Опции темы
KiSH333
Дата 21.8.2008, 09:00 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



пытаюсь открыть таблицу SQL запросом, т.е. получить из нее данные но ни что не получается!
Код

 od:=TOpenDialog.Create(Application);
  od.Filter:='*.dbf|*.dbf';
  od.FileName:='CENA_.dbf';
  if not od.Execute then exit;
  qrCena:=TQuery.Create(Application);
    qrCena.Close;
    qrCena.SQL.Clear;
    qrCena.SQL.Text:='select * from '''+od.FileName+'''';
    qrCena.Open;
    while (not qrCena.Eof) do
    begin
       ShowMessage(qrCena.FieldValues['IND']);  <-----------в этом месте вылетает 
                                                    ошибка что такого поля нет помогите кто чем может!!!  
    qrCena.Next;
    end;

M
Rodman
Модератор: Используйте подсветку кода!


Это сообщение отредактировал(а) Rodman - 22.8.2008, 08:56
PM MAIL   Вверх
pseud
Дата 21.8.2008, 09:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Цитата(KiSH333 @  21.8.2008,  09:00 Найти цитируемый пост)
в этом месте вылетает                                                     ошибка что такого поля нет помогите кто чем может!!!  

помочь выбрать в диалоге файл таблицы, в котором таки есть такое поле?



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


Delphi developer
****


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

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



Цитата(KiSH333 @  21.8.2008,  09:00 Найти цитируемый пост)
в этом месте вылетает                                                     ошибка что такого поля нет

А оно там точно есть?



--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
KiSH333
Дата 21.8.2008, 10:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Да это идентичные таблицы!!! я вот и не магу панять в чем дело!!!
PM MAIL   Вверх
Данкинг
Дата 21.8.2008, 10:46 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

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



А что, подключаться к таблицам уже не надо? TQuery сам всё сделает волшебным образом? smile 

И это порадовало:

Цитата(KiSH333 @  21.8.2008,  10:00 Найти цитируемый пост)
пытаюсь открыть таблицу SQL запросом

 smile 


Это сообщение отредактировал(а) Данкинг - 21.8.2008, 10:48


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
KiSH333
Дата 21.8.2008, 10:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(Данкинг @  21.8.2008,  10:46 Найти цитируемый пост)
А что, подключаться к таблицам уже не надо? TQuery сам всё сделает волшебным образом?  


ну раз тас мешно помог бы лучше! а то как кто ни зайдет посмеется и долой прочь!!


покажи тогда как надо????
вверху мой код, как надо тогда сделать!!!
PM MAIL   Вверх
Данкинг
Дата 21.8.2008, 11:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

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



Цитата(KiSH333 @  21.8.2008,  11:59 Найти цитируемый пост)
как надо тогда сделать!!! 

Поискать по форуму надо
 smile 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
pseud
Дата 21.8.2008, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Данкинг, -1. По-моему, с кодом все ОК. Я бы, конечно, так не писал. Но на первый взгялд код рабочий.

KiSH333, -1. За форматирование поста. Тренируйся.

KiSH333, дословный текст ошибки изобрази.

Это сообщение отредактировал(а) pseud - 21.8.2008, 11:40


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


Шустрый
*


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

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



Field 'IND' not found

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


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

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



Цитата(pseud @  21.8.2008,  12:39 Найти цитируемый пост)
По-моему, с кодом все ОК.

А где соединение с базой, к которому этот созданный объект-запрос подключается?


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
KiSH333
Дата 21.8.2008, 12:02 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(Данкинг @  21.8.2008,  11:23 Найти цитируемый пост)
Поискать по форуму надо  


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

Добавлено @ 12:05
Цитата(Данкинг @  21.8.2008,  11:59 Найти цитируемый пост)
А где соединение с базой, к которому этот созданный объект-запрос подключается?

Код

procedure ImportPostPrice;
 const
    tqInsertIntoCena = 'insert into CENA_(IND,TIP_CENA,TIP_TAR,C1,C2,C3,C4,C5,C6)'+
                       'values(:IND,:TIP_CENA,:TIP_TAR,:C1,:C2,:C3,:C4,:C5,:C6);'  ;


 var qrCena:TQuery;
//     IndexAndPrice.
     od:TOpenDialog;
     d1:TDateTime;
     db:TDataBase;
begin
 try
  od:=TOpenDialog.Create(Application);
  od.Filter:='*.dbf|*.dbf';
  od.FileName:='CENA_.dbf';
  if not od.Execute then exit;
  qrCena:=TQuery.Create(Application);


  DM1.TrCena.StartTransaction;
  try
           qrCena.SQL.Clear;

    qrCena.SQL.Text:='select * from '''+od.FileName+'''';
    qrCena.open;


        
  while not qrCena.Eof do
  begin
    with (DM1.QrDelCena) do
    begin
      Active:=false;
      SQL.Clear;
      SQL.Add(tqInsertIntoCena);
      ShowMessage(qrCena.FieldValues['IND']);
      ParamByName('IND').Value:=qrCena.FieldValues['IND'];
      ShowMessage(FieldValues['IND']);
      //FieldValues['IND']
      ParamByName('TIP_CENA').Value:=qrCena.FieldValues['TIP_CENA'];
      ParamByName('TIP_TAR').Value:=qrCena.FieldValues['TIP_TAR'];
      ParamByName('C1').Value:=qrCena.FieldValues['C1'];
      ParamByName('C2').Value:=qrCena.FieldValues['C2'];
      ParamByName('C3').Value:=qrCena.FieldValues['C3'];
      ParamByName('C4').Value:=qrCena.FieldValues['C4'];
      ParamByName('C5').Value:=qrCena.FieldValues['C5'];
      ParamByName('C6').Value:=qrCena.FieldValues['C6'];
      DM1.QrDelCena.ExecSQL;
    end;
    DM1.QrDelCena.ExecSQL;
    qrCena.Next;
  end;
    //DM1.QrDelCena.ExecSQL;
    DM1.TrCena.Commit;
  finally
    DM1.TrCena.Rollback;
  end;



ВОТ И ВОЗНИКАЕТ ОШИБКА ЧТО ОН ЯКОБЫ НЕ ВИДИТ ПОЛЕЙ В QrCENA!!!




Это сообщение отредактировал(а) Rodman - 22.8.2008, 08:58
PM MAIL   Вверх
pseud
Дата 21.8.2008, 12:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Цитата(Данкинг @  21.8.2008,  11:59 Найти цитируемый пост)
А где соединение с базой, к которому этот созданный объект-запрос подключается?

Это локальная база DBase. Поэтому в Query можно указать полное имя файла.
Поэтому Connection (в данном случае - BDE - Database) не обязателен.

Добавлено через 5 минут и 41 секунду
сделай что-то на подобие этого и расскажи, что увидал:
Код

  od:=TOpenDialog.Create(Application);
  od.Filter:='*.dbf|*.dbf';
  od.FileName:='CENA_.dbf';
  if not od.Execute then 
    Exit;
  with TQuery.Create(Application) do
  try
    qrCena.SQL.Text:='select * from '''+od.FileName+'''';
    qrCena.Open;
    for i := 0 to Fields.Count - 1 do
      ShowMessage(Fields[i].FieldName);
  finally
    Free;
  end;



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


Шустрый
*


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

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



pseud, access violation at adress 0061A58D in module podp.exe. Read of address 00000238.
PM MAIL   Вверх
Данкинг
Дата 21.8.2008, 13:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

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



Цитата(pseud @  21.8.2008,  13:05 Найти цитируемый пост)
Поэтому Connection (в данном случае - BDE - Database) не обязателен.

Впервые слышу. Ну и почему же поля-то не находятся? smile 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
pseud
Дата 21.8.2008, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Цитата(KiSH333 @  21.8.2008,  12:18 Найти цитируемый пост)
pseud, access violation at adress 0061A58D in module podp.exe. Read of address 00000238.


Цитата(KiSH333 @  21.8.2008,  09:00 Найти цитируемый пост)
 ошибка что такого поля нет помогите кто чем может!!!  


как видишь это совсем разные вещи

когда пишеь пост - есть выпадающий список КОД - с помощью него форматируй свой код!

KiSH333, глядя на твой код становится немножко страшно  smile 

может тебе поможет вместо 
Код

ShowMessage(FieldValues['IND']);

написать
Код

ShowMessage(qrCena.FieldValues['IND']);



Это сообщение отредактировал(а) pseud - 21.8.2008, 14:10


--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
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.0618 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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