Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
1inkin
0 / 0 / 0
Регистрация: 16.10.2010
Сообщений: 12
1

if в SQL-запросе

10.06.2011, 00:09. Просмотров 1219. Ответов 2
Метки нет (Все метки)

формирую в ADOQuery SQL-запрос в котором нужно представить два поля НОМЕР и ДАТА в формате "НОМЕР от ДАТА" через переменную и данный результат вывести в таблицу. но если данных нет, то в таблицу выводится "от". как сделать, чтобы в случае пустых полей переменной присваивалась пустота, а не выше описанное выражение. то есть нужно чтото типа IF, если НОМЕР пустой, то переменная тоже пустая, если НОМЕР не пустой, то переменная равна строке "НОМЕР от ДАТА".
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.06.2011, 00:09
Ответы с готовыми решениями:

Ошибка в SQL запросе
как правильно оформить данный запрос: String data; String topl; data=MaskEdit1->Text;...

Ошибка в запросе SQL
Этот запрос работает как надо, претензий нет. Students->Query1->SQL->Clear();...

Параметры в SQL запросе
вот такой вот запрос SELECT Remont.Id_tt, Remont.D_priem, Tovar.Id_t, Tovar.Name_t FROM...

sum в SQL запросе
имеется такой простой запрос с агрегатной функцией SUM SELECT SUM( Kolchasov ) summa, IDPrepod,...

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

2
MsGuns
552 / 549 / 60
Регистрация: 04.04.2011
Сообщений: 2,055
10.06.2011, 01:24 2
Лучший ответ Сообщение было отмечено 1inkin как решение

Решение

Зависит от диалекта SQL, укажите что у Вас за сервер.

Можно подобное сделать чисто на клиенте, написав в обработчике одного из указанных Вами полей OnGetField следующее:

C++
1
2
3
4
5
  if (!DataSet->Fields->FieldByName("InvDate")->IsNULL) 
     Text = DataSet->Fields->FieldByName("InvNumber")->AsString + " от " \
               FormatDateTime(DataSet->Fields->FieldByName("InvDate")->AsDateTime,"dd.mm.yyyy");
  else
     Text = "";
Добавлено через 36 секунд
Извиняюсь, OnGetText
0
bodik21
16 / 4 / 0
Регистрация: 23.06.2011
Сообщений: 19
29.06.2011, 11:02 3
это точно зависит от диалекта.
У вашем случае можна написать тригер before insert и проверять значения, ведь вы где-то можете и забыть про такую проверку в программном коде, а тригер всегда сработает
0
29.06.2011, 11:02
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.06.2011, 11:02

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Сравнение с числом в sql запросе
Добрый вечер. Как исправить проблему? Программа не может сравнить kur.kurstoim с...

Пунктуация в динамическом SQL-запросе
Я запутался в пунктуации при формировании запроса. Помогите разобраться! Ошибка: TypeMissmatch in...

Работа с датой в запросе sql
Вот такой запрос: Form1->ADOQuery1->SQL->Text="INSERT INTO Table1(Код, ) VALUES ("+...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.