Widziałem gdzieś, że można zdefiniować rozmiar kolumny dla kolumn całkowitych (np. Integer (20), Integer (10) itp.), Ale z jakiegoś powodu wydaje się, że sqlalchemy zignorować te rozmiary w tworzeniu kwerendy tabela produkuje poprzez create_all():sqlalchemy Integer rozmiar kolumny
class Job(Base):
__tablename__ = "t_job"
id = Column(Integer(20), Sequence('%s_id_seq' % __tablename__), primary_key=True, nullable=False)
name = Column(String(30))
company_id = Column(Integer(20), ForeignKey("t_company.id", ondelete="CASCADE"), nullable=False)
produkuje następujące zapytanie:
CREATE TABLE t_job (
id INTEGER NOT NULL AUTO_INCREMENT,
name VARCHAR(30),
company_id INTEGER NOT NULL,
PRIMARY KEY (id),
FOREIGN KEY(company_id) REFERENCES t_company (id) ON DELETE CASCADE
)
jeśli to nie jest właściwy sposób, aby to zrobić, co to jest?
Również na wielkość całkowitych w MySQL * głównie * bezcelowe. Po prostu użyłbym Integer. Zobacz http://alexander.kirk.at/2007/08/24/what-does-size-in-intsize-of-mysql-mean/ –