SQLRU.net
Разработка приложений баз данных

Начало » Использование СУБД » Firebird, HQbird, InterBase » Вопрос на засыпку
Вопрос на засыпку [сообщение #262] Wed, 03 August 2022 08:28 Переход к предыдущему сообщению
DarkMaster в настоящее время не в онлайне  DarkMaster
Сообщений: 35
Зарегистрирован: August 2022
Member
Вводная - есть старая система на FB. Есть пользовательские "сетки", хранящиеся в таблице GRIDS (например) в виде: { GRIDNAME, FIELDNAME, FIELDCAPTION, VISIBLE }.
Т.е. "сетка/грид" для запроса :

SELECT ID,NAME FROM FRIENDS

в таблице GRIDS будет иметь вид:

GRIDNAME FIELDNAME FIELDCAPTION VISIBLE
FRIENDS_GRID ID Идентификатор 0
FRIENDS_GRID NAME Имя друга 1

В дополнение есть таблица "отчетов/запросов", которая хранит инфу о SQL запросах и именах сеток. По факту - берем из БД запрос, настраиваем сетку по имени, показываем пользователю - все ясно и прозрачно. В запросах SELECT из таблиц, процедур, execute block.

Теперь о грустном - надо ввести в GRIDS дополнительное поле типа FIELDFORMAT (например) для использования другой софтиной. Достаточно будет определить, какие поля в запросе DATE,TIME,TIMESTAMP. Вот как бы это вывернуть без написания специальной тузлы, которая выполнит/препарирует запрос, определит, что за поля он вернул и обновит соответствующую ему сетку в GRIDS.

Т.е. на запрос:

select t.id, t.mydate, n.name
from t
join n on (n.did=t.id)

Вернулось бы что-то в виде:

id INTEGER
mydate DATE
name VARCHAR

Можно ли такое вывернуть на SQL вообще? Подозреваю, что нет, но так - на всякий случай спрашиваю.
 
Сообщение не прочитано
Сообщение не прочитано
Сообщение не прочитано
Предыдущая тема: ODBC для FB3 в комбинации с Excel
Следующая тема: Установить Firebird 4 под Ubuntu?
Переход к форуму:
  


Текущее время: Fri Dec 27 07:30:56 GMT+3 2024

Общее время, затраченное на создание страницы: 0.01284 секунд