Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 26.02.2012
Сообщений: 5

Запрос SQL в условии if

26.02.2012, 19:49. Показов 1587. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вечер добрый. требуется чтобы при нажатии на кнопку в БД dynppl_dsdop в столбец UNICOD_STAC добавлялось число, равное тому, что находится в DBEdit8. Если же в бд dynppl_dsdop в столбце UNICOD_STAC уже есть такое число, то выводилось сообщение о том, что такая запись там уже есть.
вот код предоставляю. этот код добавляет просто много раз число которое содержится в DBedit...что я делаю не так? заранее спасибо

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
void __fastcall TForm3::Button2Click(TObject *Sender)
{
 
 Form3->ADOQuery1->SQL->Clear();
if (Form3->ADOQuery1->SQL->Add("SELECT UNICOD_STAC='"+DBEdit8->Text+"' FROM dynppl_dsdop"))
  {
   {Form3->ADOQuery1->Open();
   MessageBox(NULL, "уже есть", "!!!", MB_OK | MB_ICONINFORMATION);}
  }
 
  else
  {    
   Form3->ADOQuery1->SQL->Clear();
Form3->ADOQuery1->SQL->Add("SELECT * FROM dynppl_dsdop");
Form3->ADOQuery1->Open();
Form3->ADOQuery1->SQL->Clear();
Form3->ADOQuery1->SQL->Add("INSERT INTO dynppl_dsdop (UNICOD_STAC) SELECT UNICOD_STAC FROM dynpeople WHERE UNICOD_STAC= '"+DBEdit8->Text+"'");
Form3->ADOQuery1->ExecSQL();
  }  
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.02.2012, 19:49
Ответы с готовыми решениями:

SQL Запрос, при условии
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Admin</title> </head> <body> <?php // ПОДКЛЮЧЕНИЕ...

Запрос в условии выбора
Здравствуйте ! В запросе из которого будет делаться отчет, нужно в поле "№ Акта" убрать записи "№ Акта" которые дает...

запрос на выборку при условии (не)
Доброго времени суток! Прошу помощи, правильно я написал запрос, при выполнении запроса он выдает множество строк причем многие строки...

4
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
26.02.2012, 19:55
Цитата Сообщение от nocomment Посмотреть сообщение
if (Form3->ADOQuery1->SQL->Add("SELECT UNICOD_STAC='"+DBEdit8->Text+"' FROM dynppl_dsdop"))
Так условие с запросом никто не использует.
Делай запрос на нахождение числа в столбце без условия
0
0 / 0 / 0
Регистрация: 26.02.2012
Сообщений: 5
26.02.2012, 22:02  [ТС]
Можно наводку хотя бы как это осуществить? не могу сообразить..
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
26.02.2012, 22:19
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Form3->ADOQuery1->SQL->Close();
Form3->ADOQuery1->SQL->Clear();
Form3->ADOQuery1->SQL->Add("SELECT UNICOD_STAC='"+DBEdit8->Text+"' FROM dynppl_dsdop")
Form3->ADOQuery1->SQL->Open(); 
if(Form3->ADOQuery1->RecordCount !=0)
{
     MessageBox(NULL, "уже есть", "!!!", MB_OK | MB_ICONINFORMATION);}
}
 
  else
  {    
  Form3->ADOQuery1->Close();
  Form3->ADOQuery1->SQL->Clear();
  Form3->ADOQuery1->SQL->Add("INSERT INTO dynppl_dsdop (UNICOD_STAC) SELECT UNICOD_STAC     FROM dynpeople WHERE UNICOD_STAC= '"+DBEdit8->Text+"'");
  Form3->ADOQuery1->ExecSQL();
  Form3->ADOQuery1->SQL->Close();
  Form3->ADOQuery1->SQL->Clear();
  Form3->ADOQuery1->SQL->Add("SELECT * FROM dynppl_dsdop");
  Form3->ADOQuery1->Open();
}
1
0 / 0 / 0
Регистрация: 26.02.2012
Сообщений: 5
26.02.2012, 22:32  [ТС]
Ого, спасибо огромное! всё действительно работает. разобрался в этом
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.02.2012, 22:32
Помогаю со студенческими работами здесь

Запрос в 1С: разность дат в условии ГДЕ
есть след запрос: ВЫБРАТЬ РеализацияТоваровУслуг.Контрагент, -РАЗНОСТЬДАТ(&ДатаОтчета,...

Выполнить второй запрос, при условии
Как выполнить второй запрос, при условии, что первый запрос ничего не вернул. Что-то типа: if ( "SELECT surname FROM...

Запрос в условии IIf. Как сделать?
SELECT DISTINCT IIF( ( SELECT COUNT(*) FROM SpecParSheet WHERE SpecParSheet.P14 = 'WHERE_1' AND SpecParSheet.P5= 939262 ) >0 ,...

Select-запрос. Конкатенация в условии - текст+значение поля
Таблица во вложении необходимо выбрать те строки где числа(!) в колонках name и resource не равны Что-то типа такого: SELECT * FROM...

Запрос: Добавить запись при условии, что такого значения не было
Есть список предметов в таблице ИГРУШКИ id | toys Запрос должен добавить новый предмет "мяч", но только при условии, что...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru