Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.08.19;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.006 c
1-60566
snoup
2002-08-06 20:01
2002.08.19
Кто-нибудь знаете как можно с эмулировать командную строку как эт


14-60855
dimanew
2002-07-25 12:13
2002.08.19
Как программно определить название винчестера


6-60777
elgato
2002-06-06 19:55
2002.08.19
Socket - асинхронный


14-60844
Snake2000
2002-07-14 03:08
2002.08.19
Помогите геймеру


3-60534
DieHard
2002-07-30 14:34
2002.08.19
Приоритет запроса





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский