Форум по программированию Delphi Sources

 



Вернуться   Форум по программированию Delphi Sources > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #31  
Старый 18.10.2012, 11:51
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от Andrej-zhe
Так хорошо а что надо придпринять чтобы данные из файла sbor были удалены
EmptyTable вполне справляется с этой задачей.
Цитата:
Сообщение от Andrej-zhe
, а условие
Код:
if Query1.RecordCount>0 
выполнялось?
Чтобы это условие выполнялось необходимо чтобы SQL-запрос в Query1 вернул непустой DataSet (т.е. чтобы в выборке была хотя бы одна запись).
Ответить с цитированием
  #32  
Старый 18.10.2012, 12:11
Andrej-zhe Andrej-zhe вне форума
Прохожий
 
Регистрация: 28.08.2012
Адрес: Курск
Сообщения: 49
Репутация: 10
По умолчанию

А как тогда он срабатывает если я создаю новый файл sbor.dbf он же изночально пустой?
Ответить с цитированием
  #33  
Старый 18.10.2012, 12:17
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от Andrej-zhe
А как тогда он срабатывает
Кто срабатывает?
Цитата:
Сообщение от Andrej-zhe
если я создаю новый файл sbor.dbf он же изночально пустой?
Я не знаю как ты создаёшь файл sbor.dbf.
Ответить с цитированием
  #34  
Старый 18.10.2012, 12:43
Andrej-zhe Andrej-zhe вне форума
Прохожий
 
Регистрация: 28.08.2012
Адрес: Курск
Сообщения: 49
Репутация: 10
По умолчанию

а почему тогда вот такой запрос выполнятеся.
Код:
Query1.SQL.Text:='SELECT o.dpo, m.nist, m.fio,  m.date_wz, m.dp, m.dw, d.name, d.kodn, m.otd FROM duh.dbf d, oper.dbf o, oper_ozo.dbf z, mklh.dbf m WHERE (d.type = o.type and d.subtype = o.subtype and d.kod = o.kod) AND'+
'(d.type = z.type and d.subtype = z.subtype and d.kod = z.kod) AND (o.n =  m.nk and o.otd = m.otd)';
и условие принимает значение истина.
Код:
if Query1.RecordCount>=0
Ответить с цитированием
  #35  
Старый 18.10.2012, 12:51
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от Andrej-zhe
а почему тогда вот такой запрос выполнятеся.
Код:
Query1.SQL.Text:='SELECT o.dpo, m.nist, m.fio,  m.date_wz, m.dp, m.dw, d.name, d.kodn, m.otd FROM duh.dbf d, oper.dbf o, oper_ozo.dbf z, mklh.dbf m WHERE (d.type = o.type and d.subtype = o.subtype and d.kod = o.kod) AND'+
'(d.type = z.type and d.subtype = z.subtype and d.kod = z.kod) AND (o.n =  m.nk and o.otd = m.otd)';
и условие принимает значение истина.
Код:
if Query1.RecordCount>=0
Вообще-то это условие всегда будет принимать значение истина. Разве может быть количество записей отрицательным числом?
Ответить с цитированием
  #36  
Старый 18.10.2012, 16:57
Andrej-zhe Andrej-zhe вне форума
Прохожий
 
Регистрация: 28.08.2012
Адрес: Курск
Сообщения: 49
Репутация: 10
По умолчанию

Чет я так и не разобрался. Вот файлик, как сделать (например на кнопке выход) чтобы после всех манипуляций над файлом закрыли программу и файл стал опять таким же как был до начала работы с программой.
Вложения
Тип файла: zip sbor.zip (267 байт, 3 просмотров)
Ответить с цитированием
  #37  
Старый 18.10.2012, 17:33
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от Andrej-zhe
Чет я так и не разобрался. Вот файлик, как сделать (например на кнопке выход) чтобы после всех манипуляций над файлом закрыли программу и файл стал опять таким же как был до начала работы с программой.
Если тебе нужно очистить таблицу, то так:
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
  Table1.Close;
  Table1.EmptyTable;
  Table1.Open;
end;

Если тебе нужно именно восстановить таблицу в первоначальное состояние, то лучше файл sbor.dbf вообще не трогать, а вместо этого создавать его копию типа sbor_temp.dbf и в программе работать с ним, а когда он больше не нужен, то просто удалять с диска.
Ответить с цитированием
Ответ



Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 01:45.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources", 2004-2019

ВКонтакте   Facebook   Twitter