DbTableParam ================= .. currentmodule:: axioma.core.dp .. class:: DbTableParam Параметры таблицы или представления .. csv-table:: Тип объекта БД :data:`TypeObject`: :header: "Наименование величины", "Значение", "Описание" unknown, 0, "Не определен" table, 1, "Таблица" view, 2, "Представление" .. py:method:: DbTableParam(owner, name) Конструктор :param owner: Владелец объекта :type owner: :class:`str` :param name: Наименование объекта :type name: :class:`str` :param name: Тип объекта :type name: :class:`TypeObject` .. py:method:: owner() Владелец объекта :return: Наименование владельца :rtype: :class:`str` .. py:method:: name() Наименование объекта :return: Наименование объекта :rtype: :class:`str` Тип объекта :return: Тип :rtype: :class:`TypeObject` DatabaseMetadata =================== .. currentmodule:: axioma.core.dp .. class:: DatabaseMetadata Получение метаданных из текущей базы данных .. py:method:: geometryParams(owner, table) Геометрические параметры таблицы. :param owner: Владелец таблицы :type owner: :class:`str` :param table: Наименование таблицы :type table: :class:`str` :return: Массив пар наименование-значение :rtype: :class:`map` [ :class:`str`, :class:`str` ] .. py:method:: tableAttributes(owner, table) Список атрибутов таблицы :param owner: Владелец таблицы :type owner: :class:`str` :param table: Наименование таблицы :type table: :class:`str` :return: Список атрибутов :rtype: :class:`~axioma.core.dp.AttributeList` .. py:method:: tableUniqueFields(owner, table) Список уникальных полей :param owner: Владелец таблицы :type owner: :class:`str` :param table: Наименование таблицы :type table: :class:`str` :return: Массив с перечнем списков полей. Это могут быть первичные ключи или уникальные индексы :rtype: :class:`list` [ :class:`list` [ :class:`str` ] ] .. py:method:: boundingRect(owner, table, field) Ограничивающий прямоугольник таблицы :param owner: Владелец таблицы :type owner: :class:`str` :param table: Наименование таблицы :type table: :class:`str` :param field: Наименование поля с геометрией :type field: :class:`str` :return: Ограничивающий прямоугольник :rtype: :class:`~PyQt5.QtCore.QRectF` .. py:method:: currentSchema() Текущая схема :return: Наименование схемы :rtype: :class:`str` .. py:method:: listTables() Перечень доступных таблиц базы :return: Список :rtype: :class:`list` [ :class:`~axioma.core.dp.DbTableParam` ] Пример использования: .. code-block:: python # Запрос метаданных системного словаря БД def getMatadata(dataSource): meta = dataSource.metadata() # атрибуты таблицы for attr in meta.tableAttributes('public', 'world'): print("ATTR", attr.name(), attr.displayClassName(), attr.type()) # Унакальные поля таблицы print("UNIQUE", meta.tableUniqueFields('public', 'world')) # Ограничивающий прямоугольник таблицы print("B_RECT", meta.boundingRect('public', 'world', 'geometry')) # Параметры геометрии print("GEOMETRY", meta.geometryParams('public', 'world'))