5
我想为Column
定义中的索引或通过Index
构造函数设置索引的最大限制,但我似乎找不到实现它的方法。在SQLAlchemy中设置索引限制
基本上,我想模仿这个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;
在SQLAlchemy中我会是这样的:
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
,但我无法找到任何建议的限制该指数可以定制。喜欢的东西:
some_text = sa.Column(sa.String(2048), index=True, index_length=1024)
我想因为这个选项对于Column
构造仅仅是一个别名Index
构造,有一个自定义PARAM在Index
构造包括允许该设置吗?
谢谢!
如果一定要“字头”的索引,你可能也使长度足够长的时间,以通常分辨行。 (1024个气味过多。) –