DbTableParam

class axioma.core.dp.DbTableParam

Параметры таблицы или представления

Тип объекта БД TypeObject:
Наименование величины Значение Описание
unknown 0 Не определен
table 1 Таблица
view 2 Представление
DbTableParam(owner, name)

Конструктор

Параметры:
  • owner (str) – Владелец объекта
  • name (TypeObject) – Наименование объекта
  • name – Тип объекта
owner()

Владелец объекта

Результат:Наименование владельца
Тип результата:str
name()

Наименование объекта

Результат:Наименование объекта
Тип результата:str

Тип объекта

Результат:Тип
Тип результата:TypeObject

DatabaseMetadata

class axioma.core.dp.DatabaseMetadata

Получение метаданных из текущей базы данных

geometryParams(owner, table)

Геометрические параметры таблицы.

Параметры:
  • owner (str) – Владелец таблицы
  • table (str) – Наименование таблицы
Результат:

Массив пар наименование-значение

Тип результата:

map [ str, str ]

tableAttributes(owner, table)

Список атрибутов таблицы

Параметры:
  • owner (str) – Владелец таблицы
  • table (str) – Наименование таблицы
Результат:

Список атрибутов

Тип результата:

AttributeList

tableUniqueFields(owner, table)

Список уникальных полей

Параметры:
  • owner (str) – Владелец таблицы
  • table (str) – Наименование таблицы
Результат:

Массив с перечнем списков полей. Это могут быть первичные ключи или уникальные индексы

Тип результата:

list [ list [ str ] ]

boundingRect(owner, table, field)

Ограничивающий прямоугольник таблицы

Параметры:
  • owner (str) – Владелец таблицы
  • table (str) – Наименование таблицы
  • field (str) – Наименование поля с геометрией
Результат:

Ограничивающий прямоугольник

Тип результата:

QRectF

currentSchema()

Текущая схема

Результат:Наименование схемы
Тип результата:str
listTables()

Перечень доступных таблиц базы

Результат:Список
Тип результата:list [ DbTableParam ]

Пример использования:

# Запрос метаданных системного словаря БД
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'))