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

Sql запросы в builder c++

22.11.2015, 15:23. Показов 1982. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Мне нужно чтобы по нажатию кнопки выполнялся sql запрос. Как это сделать?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.11.2015, 15:23
Ответы с готовыми решениями:

Запросы из Access в c++ Builder
Здравствуйте! Я подключил базу данных Access 2003, через ADo в билдер. У меня есть запросы написанные в самой базе, в аццессе. МОжно...

Перевести запросы SQL в запросы средствами реляционной алгебры
Ребята помогите, пожалуйста, перевести запросы SQL в язык реляционной алгебры. Курсак с утра сдавать, а я не понимаю как написать. ...

SQL Запросы. MS SQL. 3. Приложения, которые работают со всеми серверами БД
Всем доброго времени суток! Есть задача: Приложения, которые работают со всеми серверами БД. Есть отношения: R3: ...

7
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
22.11.2015, 15:34
Цитата Сообщение от zloy00777 Посмотреть сообщение
Мне нужно чтобы по нажатию кнопки выполнялся sql запрос
Какой именно?
0
0 / 0 / 0
Регистрация: 22.11.2015
Сообщений: 18
22.11.2015, 15:47  [ТС]
К примеру update

Добавлено через 7 минут
К примеру Update, для обновления одного из значений в таблице
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
22.11.2015, 15:49
Параметризированный запрос на обновление, где PrevID это переменная в которой записано значение поля Invent_Number

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
             ADOQuery1->Close();
             ADOQuery1->SQL->Clear();
             ADOQuery1->SQL->Add("UPDATE Glavnaya SET Invent_Number = :Invent_Number, Number_in_Lan = :Number_in_Lan, Department = :Department, Processor = :Processor, Memory = :Memory, HDD = :HDD, Room = :Room, Windows_98 = :Windows_98, Windows_2000 = :Windows_2000, Windows_XP = :Windows_XP, Other = :Other, Serial_Number = :Serial_Number, Serial_Number_AutoCadLT_2010 = :Serial_Number_AutoCadLT_2010, Antivirus = :Antivirus");
             ADOQuery1->SQL->Add("WHERE Invent_Number = " + IntToStr(PrevID));
             ADOQuery1->Parameters->ParamByName("Invent_Number")->Value = StrToInt(ValueListEditor1->Cells[1][1]);
             ADOQuery1->Parameters->ParamByName("Number_in_Lan")->Value = Trim(ValueListEditor1->Cells[1][2]);
             ADOQuery1->Parameters->ParamByName("Department")->Value = Trim(ValueListEditor1->Cells[1][3]);
             ADOQuery1->Parameters->ParamByName("Processor")->Value = Trim(ValueListEditor1->Cells[1][4]);
             ADOQuery1->Parameters->ParamByName("Memory")->Value = Trim(ValueListEditor1->Cells[1][5]);
             ADOQuery1->Parameters->ParamByName("HDD")->Value = Trim(ValueListEditor1->Cells[1][6]);
             ADOQuery1->Parameters->ParamByName("Room")->Value = Trim(ValueListEditor1->Cells[1][7]);
             ADOQuery1->Parameters->ParamByName("Windows_98")->Value = Trim(ValueListEditor1->Cells[1][8]);
             ADOQuery1->Parameters->ParamByName("Windows_2000")->Value = Trim(ValueListEditor1->Cells[1][9]);
             ADOQuery1->Parameters->ParamByName("Windows_XP")->Value = Trim(ValueListEditor1->Cells[1][10]);
             ADOQuery1->Parameters->ParamByName("Other")->Value = Trim(ValueListEditor1->Cells[1][11]);
             ADOQuery1->Parameters->ParamByName("Serial_Number")->Value = Trim(ValueListEditor1->Cells[1][12]);
             ADOQuery1->Parameters->ParamByName("Serial_Number_AutoCadLT_2010")->Value = Trim(ValueListEditor1->Cells[1][13]);
             ADOQuery1->Parameters->ParamByName("Antivirus")->Value = Trim(ValueListEditor1->Cells[1][14]);
             ADOQuery1->ExecSQL();
1
0 / 0 / 0
Регистрация: 22.11.2015
Сообщений: 18
22.11.2015, 16:55  [ТС]
В моем случае у меня есть три таблицы: Сотрудник(ID, ФИО), Комната(ID, №_комнаты), Размещение(ID,ID_комнаты,ID_сотрудника). По нажатию на кнопку из DBGrid берется Комната.ID конкретное значение и из другого DBGrid берется Сотрудник.ID. После этого с помощью запроса в таблицу Размещение в строчку, где ID_комнаты=Комната.ID занести в поле ID_сотрудника вот это => Сотрудник.ID

Добавлено через 54 минуты
Написал я
C++
1
2
3
4
5
 ADOQuery1->Close();
        ADOQuery1->SQL->Clear();
        ADOQuery1->SQL->Add("UPDATE Размещение, Сотрудник, Комната SET ID_Сотрудник=:3 where ID_комнаты=3");
        ADOQuery1->Parameters->ParamByName("ID_Сотрудник")->Value =3;
        ADOQuery1->ExecSQL();
Говорит, что Parameter "ID_Сотрудник" не найден
0
480 / 393 / 113
Регистрация: 24.04.2012
Сообщений: 1,632
Записей в блоге: 3
23.11.2015, 03:26
Цитата Сообщение от zloy00777 Посмотреть сообщение
Говорит, что Parameter "ID_Сотрудник" не найден
Так у тебя его и нет
C++
1
ADOQuery1->SQL->Add("UPDATE Размещение, Сотрудник, Комната SET ID_Сотрудник=:ID_Сотрудник where ID_комнаты=3");
лучше будет если таблицы, поля(столбцы), и параметры будут на латинском
0
0 / 0 / 0
Регистрация: 22.11.2015
Сообщений: 18
23.11.2015, 14:32  [ТС]
Цитата Сообщение от Sasha Посмотреть сообщение
ADOQuery1->Parameters->ParamByName("Number_in_Lan")->Value = Trim(ValueListEditor1->Cells[1][2]);
а что эта строка вообще обозначает, можно мне подробнее про нее?
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
23.11.2015, 15:00
Цитата Сообщение от zloy00777 Посмотреть сообщение
можно мне подробнее про нее?
Можно
В параметр под названием Number_in_Lan такое же название имеет и поле в таблице заносится значение из компонента ValueListEditor, а именно из второй строки
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.11.2015, 15:00
Помогаю со студенческими работами здесь

SQL запросы, чем плоха конкатенация SQL запроса?
Опишу ситуацию, есть БД с несколькими таблицами, с которыми нужно совершать много разных операций при разных условиях. Операции...

Sql запросы [ms sql server 2008 r2]
Собсна, рубежный контроль, домашний, базу создал, таблицы связал, с запросами морока осталась. Сразу к сути, вот база данных, нужны...

SQL - запросы
Что делать, если имя поля состоит из двух слов. На данную конструкцию делфи ругается: ...

SQL-запросы
Помогите пожалуйста, что выполняют эти запросы :wall: 1) select distinct country from publishers order by country desc 2)...

БД SQL запросы
нужна помощь с : 1. Определить список городов, куда отгружал товары Иванов 2. Представить информацию в нормализованном виде ...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru