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

Firebird. Как реализовать запрос из БД?

30.04.2015, 23:27. Показов 1135. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день. Подскажите пожалуйста как реализовать запрос из базы данных.

Имеет таблицу EQUIPMENT такого вида c набором вычислительной техники
ID InvNomer Name
1 1000 Компьютер №1
2 1001 Компьютер №2
3 1002 Компьютер №3
4 1003 Принтер №1


Имеет таблицу PARAMSLIST с названиями параметров, относящихся к разным видам техники
ID Name
1 Объем ОЗУ
2 Жесткий диск
3 Монитор
4 Серийный номер
5 Скорость печати
6 IP-адрес

И таблица соотношений PARAMSEQUIPMENT
ID IDEQUIPMENT IDPARAMSLIST PARAMSVALUE
1 1 1 2GB
2 1 2 1000GB
3 1 3 Samsung 22""
4 4 5 20 стр/мин


На самом деле таблицы более сложные. Хранятся, отображаются в программе данные нормально, работать удобно.

если запрашивать какой-нибудь один параметр из таблицы, то проблем нет, а вот когда их много, и они относятся к разным видам техники...


Вот реальный запрос используемых ip-адресов

'select PARAMSEQUIPMENT.PARAMSVALUE, EQUIPMENT.INVNO, CATDEVICE.NAME, MANUFACTURER.NAME, DEVICE.NAME, EMPLOYEE.FULLNAME ' +
'from PARAMSEQUIPMENT ' +
'LEFT OUTER JOIN Equipment ON PARAMSEQUIPMENT.IDEquipment = Equipment.ID ' +
'LEFT OUTER JOIN DEVICE ON Equipment.IDDEVICE = DEVICE.ID ' +
'LEFT OUTER JOIN EMPLOYEE ON Equipment.IDEMPLOYEE = employee.ID ' +
'LEFT OUTER JOIN CATDEVICE ON Device.idcatdevice = catdevice.ID ' +
'LEFT OUTER JOIN Manufacturer ON Device.idmanufacturer = manufacturer.ID ' +
'WHERE idparamslist=6 ' +
'order by PARAMSVALUE';
Этот отчет то что надо.

А вот как к примеру сделать такой же запрос но и получить к примеру еще и столбец серийный номер, который также храниться в таблице PARAMSEQUIPMENT в толе PARAMSVALUE, как и ip-адрес
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.04.2015, 23:27
Ответы с готовыми решениями:

Как сделать запрос к базе Firebird?
Имеется база данных (*.gbd), которая подключена к С# подключаюсь к БД следующим образом: FbConnection fb...

Firebird как написать запрос со множеством полей
Как построить запрос у которого число полей зависит от содержимого другой таблицы (т.е. неограниченное количество). Дано: Таблицы...

Как написать запрос на Firebird, Interbase 2009
В бд есть таблицы: Income-накладные прихода: Income_id,Partn_id, Goods_id, Price, Qty, taxable(товар платит или нет ндс) ...

2
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,612
01.05.2015, 01:13
Цитата Сообщение от geeksoid Посмотреть сообщение
Вот реальный запрос используемых ip-адресов
Что-что? Каких адресов?
0
0 / 0 / 0
Регистрация: 22.02.2013
Сообщений: 7
01.05.2015, 07:42  [ТС]
Таблица PARAMSEQUIPMENT хранит параметры устройств. Если поле IDPARAMSLIST=6 значит для устройства с кодом IDEQUIPMENT в поле PARAMSVALUE будет записан IP-адрес этого устройства, если поле IDPARAMSLIST=4, то в поле PARAMSVALUE будет серийный номер.

Тот запрос выдает мне IP-адрес, инвентарный номер, категорию оборудования, производителя, модель и пользователя для тех устройств, где в таблице PARAMSVALUE есть записи с IDPARAMSLIST=6.

А вот если я хочу получить еще и серийный номер, к примеру. Это же опять поле PARAMSVALUE.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.05.2015, 07:42
Помогаю со студенческими работами здесь

Как вставить длинный SQL запрос из Firebird в Lazarus?
Короткий запрос работает, а длинный не работает. Хотя в Firebird работает. Может можно его как-то сохранить, а потом этот сохраненный файл...

Как создать запрос к нескольким базам данных Firebird
Подскажите пожалуйста как в Firebird 2.5 сделать запрос к нескольким БД. На пример: есть базы данных BD1.FDB и BD2.FDB которые размещены...

Firebird, как реализовать обновление таблицы у клиента при её изменении на сервере
Добрый время суток! Подскажите кто-нибудь работал с событиями firebird? Точнее интересует следующее: Visual studio C# +...

Как можно реализовать вывод из Firebird из поля с типом данных blob картинки и записывать их в PictureBox?
Здравстуйте. Как можно реализовать вывод из Firebird из поля с типом данных blob картинки и записывать их в picturebox? if (fb.State...

запрос Firebird
Помогите с запросом. select MM.FOREIGN_ABON AS D from MOVE_MONEY MM where MM.PERIOD='01.11.2011' получаю код абонента 3,4,5,6,7. ...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru