Русский
Русский
English
Статистика
Реклама

In2sql Работаем с разнообразием ODBC источников

Продолжаю серию рассказов о OpenSource разработке In2sql, которая визуализирует объекты SQL для выгрузки данных в Excel (по сути это серия статей документация к разработке).

В предыдущих частях:


В данной части поговорим о том, как создается список объектов, которые выводятся в навигационное дерево.

image

Стандартно, выделяем 4 типа основных объектов

  • Таблицы
  • Представления
  • Функции
  • Процедуры.

Так же каждая БД имеет свои объекты для хранения сущностей например:

  • MS SQL хранит данные в sys.schemas, где они разделены по типам (type = 'V' View,type = 'U' таблицы)
  • Oracle здесь все достаточно просто есть объекты user_views и user_tables, которые хранят описание соответствующих настроек пользователя
  • Vertica v_catalog.views и v_catalog.tables
  • PostegreSQL pg_catalog.pg_views и pg_catalog.pg_tables
  • MySQL information_schema.views и information_schema.tables
  • DB2 все данные хранятся в SYSIBM.tables, где table_type = 'VIEW' это представления, а table_type = 'BASE TABLE' это таблицы.
  • ClickHouse все объекты лежат в system.tables, разделение на таблицы и view происходит по полю engine = 'View'

Этим многообразием управляет класс in2SqlLibrary, в котором происходит:

  • определение типа ODBC подключения, на основании имени файла драйвера (getDBType)
  • раздача таблиц (getSqlTables) и представлений (getSqlViews) по соответствующим типам.

Для того что бы ускорить загрузку excel плагина (addin) к этим данным происходит обращение в момент раскрытия ветки соответствующего артефакта (об этом расскажу в другой статье).
Источник: habr.com
К списку статей
Опубликовано: 16.07.2020 00:06:23
0

Сейчас читают

Комментариев (0)
Имя
Электронная почта

Sql

Visual basic for applications

Odbc

Excel add-in

Oracle

Db2

Postgresql

Clickhouse

Vertica

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru