Defining the class: from sqlmodel import Field, SQLModel, create_engine, Session, select, Column,String
class person(SQLModel, table=True):
id: Optional[int] = Field(default=None, primary_key=True)
name: str = Field(max_length=100)
nickname: str = Field(max_length=30)
sqlmodel creates the table person:
CREATE TABLE person( id SERIAL NOT NULL, name varchar NOT NULL, nickname varchar NOT NULL, PRIMARY KEY(id) );
If using sqlalchemy :
Base = declarative_base() class person(Base): tablename = 'person'
id = Column(Uuid, primary_key=True, default=uuid4)
nickname = Column(String(32))
name = Column(String(100))
fields are created varchar(n)
How i fixed it for char(n) ?
char(n). See: stackoverflow.com/a/20334221/939860