Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.05.2014, 14:31   #1
Woolf42
Пользователь
 
Регистрация: 18.05.2014
Сообщений: 12
По умолчанию

Написал программу, но есть пару косяков, как их исправить не знаю.
При добавление/ редактировании записи вылетает ошибка

---------------------------
Debugger Exception Notification
---------------------------
Project Project1.exe raised exception class EDatabaseError with message 'Field 'PPP' cannot be modified'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------

Нужно вывести всех кому больше 18 лет, написал запрос, но не работает, перепробовал все что мог.
Код:
SELECT * 
FROM stud 
WHERE datediff(yy, DR, getdate()) > 18
http://files.mail.ru/2701F40EFF4D40E09FFA5AC162067A00
Вот моя программа, кому не сложно посмотрите и помогите пожалуйста

Код:
Query1.close;
Query1.SQL.Clear;
Query1.SQL.Add('Select s.FIO, s.POL, s.DR, s.ADRES + s.DOM + s.Kv as PPP, s.SPEC, s.PROH,  s. ADRES, s.Dom, s.Kv from stud s WHERE INT((DATE()-s.DR)/365.25)>18');
Query1.Open;
И такой запрос тоже не работает

Последний раз редактировалось Stilet; 19.05.2014 в 10:16.
Woolf42 вне форума Ответить с цитированием
Старый 19.05.2014, 10:20   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
datediff(yy, DR, getdate()) > 18
Ну вроде верно, но может datediff(yy, getdate(), DR) > 18
По идее должен работать норм.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.05.2014, 10:35   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Project Project1.exe raised exception class EDatabaseError with message 'Field 'PPP' cannot be modified'
Поле PPP действительно нельзя модифицировать поскольку оно вычисляемое в запросе. А где-то пытаетесь
Цитата:
Нужно вывести всех кому больше 18 лет, написал запрос, но не работает, перепробовал все что мог
А как этот запрос не работает?
Цитата:
WHERE datediff(yy, DR, getdate()) > 18
так и нужно, если DR дата рождения
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 19.05.2014, 14:10   #4
Woolf42
Пользователь
 
Регистрация: 18.05.2014
Сообщений: 12
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Поле PPP действительно нельзя модифицировать поскольку оно вычисляемое в запросе. А где-то пытаетесь
PPP у меня состоит из адреса, дома и квартиры, при добавлении/ редактировании используются тока поля адрес, дом и квартира. А как это можно исправить?

Capability not supported. Вот такая ошибка в sql explorer вылетает.
Woolf42 вне форума Ответить с цитированием
Старый 19.05.2014, 14:36   #5
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Capability not supported
Это BDE-шное собщение при RequestLive=true. Предположительно BDE не знает о существовании datediff. Откажись от BDE
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 19.05.2014, 19:54   #6
Woolf42
Пользователь
 
Регистрация: 18.05.2014
Сообщений: 12
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Это BDE-шное собщение при RequestLive=true. Предположительно BDE не знает о существовании datediff. Откажись от BDE
Блин, переписывать программу на другом BDE я уже не успею, есть другой способ сделать этот запрос? база Paradox
Woolf42 вне форума Ответить с цитированием
Старый 19.05.2014, 21:01   #7
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Смотри манул парадоксовский для правильной работы с датой-временем
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибки в задаче о парикмахере в делфи Иван12354 Помощь студентам 3 11.01.2014 22:56
Ошибки делфи Host-2013 Общие вопросы Delphi 11 22.02.2013 06:53
исправить ошибки в калькуляторе на делфи (готов заплатить) gylayko Фриланс 4 19.02.2013 00:18
Закритие делфи после ошибки -=Virus=- Компоненты Delphi 5 04.01.2010 13:51
Исправте ошибки в проге для Делфи! Toxass Общие вопросы Delphi 2 17.12.2008 02:01