Возможно ли использовать псевдонимы (My) SQL или атрибуты объекта SQLAlchemy либо в схеме таблицы, либо в определении класса модели?Имена псевдонимов псевдонимов в модели SQLAlchemy или базовой таблице SQL
Например, учитывая следующую таблицу:
Users
---------------------
username | ...
Я хотел бы иметь следующую таблицу представления:
Users
---------------------
id | username | ...
Где user.id карты для user.username без дублирования этих данных.
Внедрение этого в схему таблицы было бы идеальным, но решения с ORM было бы достаточно.
class User():
__tablename__ = 'Users'
username = Column(STRING, primary_key=True, alias='id')
Для деталей
Мой случай использования является то, что я храню Царапины данные из различных веб-сайтов. Я индексирую эти данные с лучшим идентификатором пользователя, который у меня есть, который может быть именем пользователя, числовым идентификатором или даже полным именем.
Однако, чтобы нормализовать операции по таблицам, я бы хотел, чтобы каждая таблица имела поле «id», сопоставленное с лучшим ID.
Конечно у меня есть два варианта:
- Переименование выбранного идентификатора в качестве «Users.id», проигравшую читаемость для аналитиков.
- Дублирование данных из выбранного идентификатора в «Users.id», что делает операции записи базы данных более сложными в дополнение к тратам пространства для хранения.
Думаю, вам нужно привести пример того, что вы имеете в виду. Возможно, столбцы «псевдоним», но, вероятно, не так, как вы имели в виду. – univerio
теперь понятно? Но действительно, меня совсем не интересуют имена полей псевдонимов внутри выбранного запроса, если это то, о чем вы говорили. – bsuire