SQLModel-Beispiel: Benutzerdefinierter Index über einer Spalte
English
Deutsch
Im folgenden Beispiel erstellen wir einen benutzerdefinierten SQLModel-Index über einer einzelnen Spalte.
Option 1: Direkt im Feld
Dies wird für einspaltige Indizes aufgrund seiner Einfachheit empfohlen.
Fügen Sie einfach den index=True-Parameter zum Feld hinzu:
sqlmodel_custom_index.py
from sqlmodel import SQLModel, Field
class Offer(SQLModel, table=True):
id: Optional[int] = Field(default=None, primary_key=True)
seller: str = Field(description="Name of the seller", index=True)Sie können den name-Parameter von UniqueConstraint nach Belieben wählen. Er wird verwendet, um die Einschränkung in der Datenbank zu benennen.
Option 2: Verwendung von __table_args__
Dies wird für mehrspaltige Indizes (auch zusammengesetzte Indizes genannt) empfohlen.
sqlmodel_custom_index.py
from sqlmodel import Index, SQLModel, Field
class Offer(SQLModel, table=True):
id: Optional[int] = Field(default=None, primary_key=True)
seller: str = Field(description="Name of the seller")
url: str = Field(description="URL to the product page for this seller")
__table_args__ = (
Index('idx_seller', 'seller', 'url'),
)If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow