Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.19;
Скачать: CL | DM;

Вниз

Пытаюсь сравнить дату из базы с системной и выдать сообщение.   Найти похожие ветки 

 
vich   (2002-07-25 02:28) [0]

В базе данные в виде даты, нужно найти дату рождения и выдать сообщение о том,что у человека сегодня день рождения.


 
ЮЮ   (2002-07-25 05:03) [1]

Одни повествовательные предложения.
Вопрос то в чём? Или в чём проблема?


 
vich   (2002-07-25 23:56) [2]

Как сделать, что бы программа находила в базе данных дату рождения и выдавала сообщение?


 
ЮЮ   (2002-07-26 03:09) [3]

Чтобы программа находила в базе данных дату рождения и выдавала сообщение необходимо:
1. Уметь писать программы

"Смотрим на календарь"
2. DecodeDate(Now(),Year, Month, Day);


3. Найти записи в БД

Query.SQL.Text=
"SELECT * from SomeTable
where EXTRACT(DAY FROM BirthDay)=:DD
and EXTRACT(MONTH FROM BirthDay)=:MM";

4.Подставляем параметры
Query1.Params[0].Value:=Day;
Query1.Params[1].Value:=Month;
Query1.Open;
if Query1.RecordCount>0 then Application.MessgeBox(...);

5. Найденные записи отображаем в DBGrid-е



 
vich   (2002-07-26 14:30) [4]

Спасибо за подсказку.
1. Пытаюсь писать самостоятельно, но с этим пока проблемы, так как новичок.




 
vich   (2002-07-27 00:32) [5]

>>3. Найти записи в БД
Не могу разобраться, так как не силен.
Подскажите, я должен создать базу в которой только BirthDay, в которой только месяц и день?
И где писать это:
Query.SQL.Text=
"SELECT * from SomeTable
where EXTRACT(DAY FROM BirthDay)=:DD
and EXTRACT(MONTH FROM BirthDay)=:MM" ?


 
TiredDmitry   (2002-07-27 01:12) [6]

Кажется, можно и проще, через LookUp, правда, он ищет только строгое соответствие.


 
vich   (2002-07-27 01:43) [7]

>>Кажется, можно и проще, через LookUp
Как, если не секрет?


 
NNH   (2002-07-27 11:46) [8]

У тебя должна быть написана маленькая прога, которая запускается при загрузке системы. При загрузке должно появиться окно (форма) в которой ты сам или программно в виде параметра для запроса будет передаваться системная дата. Или без запроса будет осуществлен поиск в таблице. В таблицу можешь вносить все что хочешь: дату, имя и т.д.
Например, процедура может вsглядеть так:
if Tabl_my.Locate("Data_roj",Edit1.Text,[loCaseInsensitive,loPartialKey]) then
Application.MessageBox("Есть именинник!",
"Информация",mb_IconInformation+mb_Ok)
else
Application.MessageBox("День прошел зря, именинников нет!",
"Информация",mb_IconInformation+mb_Ok);


 
vich   (2002-07-27 15:34) [9]

>> if Tabl_my.Locate("Data_roj",Edit1.Text,[loCaseInsensitive,loPartialKey]) then

Попробую применить.


 
ЮЮ   (2002-07-29 03:47) [10]

>Подскажите, я должен создать базу в которой только BirthDay, в которой только месяц и день?

BirthDay - поле типа DateTime (Date), отсюда и EXTRACT(DAY FROM BirthDay) - функция извлечения дня из даты

>И где писать это:
Query.SQL.Text=
"SELECT * from SomeTable
where EXTRACT(DAY FROM BirthDay)=:DD
and EXTRACT(MONTH FROM BirthDay)=:MM" ?

В свойсве SQL компонента TQuery

>>Tabl_my.Locate("Data_roj",Edit1.Text,[loCaseInsensitive,loPartialKey]) then ...
Трудно представить, что такое loPartialKey для поля типа Дата и как указывать при этом в Edit1.Text




 
Locky 2   (2002-07-29 11:04) [11]

А не проще для новичка будет создать в базе данных отдельные поля: Brith_Day, Brith_Month, Brith_Year. И изгалятся с ними по полной программе. (Честно говоря не помню, что бы во встроенном SQL была функция EXTRACT)



Страницы: 1 вся ветка

Текущий архив: 2002.08.19;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.016 c
6-60768
budhha
2002-06-04 09:04
2002.08.19
PacketX


1-60678
X-jedy
2002-08-06 12:20
2002.08.19
Использование TStringList


1-60695
Roman002
2002-08-06 04:58
2002.08.19
Сервис для TN


3-60520
shubin
2002-07-30 11:44
2002.08.19
День добрый!


1-60571
Kolesya
2002-08-07 19:07
2002.08.19
как передать фокус