J'aimerais définir une limite maximale pour un index dans le cadre d'une Column
ou simplement par le biais de la Index
mais je n'arrive pas à trouver le moyen de le faire.
En gros, je voudrais simuler ce comportement de MySQL :
CREATE TABLE some_table (
id int(11) NOT NULL AUTO_INCREMENT,
some_text varchar(2048) DEFAULT NULL,
PRIMARY KEY (id),
KEY some_text (some_text(1024)), # <- this line
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 ROW_FORMAT=COMPRESSED;
Dans SQLAlchemy j'aurais quelque chose comme :
class SomeTable(BaseModel):
__tablename__ = 'some_table'
__seqname__ = 'some_table_id_seq'
id = sa.Column(sa.Integer(11), sa.Sequence(__seqname__), primary_key=True)
some_text = sa.Column(sa.String(2048), index=True) # <- this line
mais je ne trouve rien qui suggère que la limite de l'indice puisse être personnalisée. Quelque chose comme :
some_text = sa.Column(sa.String(2048), index=True, index_length=1024)
Je suppose que puisque cette option pour le Column
est juste un alias pour le constructeur Index
existe-t-il un paramètre personnalisé à inclure dans le constructeur de la Index
pour permettre ce réglage ?
Merci !