Add "String fields and column length" sections to docs

This commit is contained in:
Yurii Motov
2026-01-27 14:19:33 +01:00
parent 5611bda2e5
commit 9ba902b33c
11 changed files with 217 additions and 0 deletions

View File

View File

@@ -0,0 +1,19 @@
from sqlmodel import Field, SQLModel, create_engine
class Hero(SQLModel, table=True):
id: int | None = Field(default=None, primary_key=True)
name: str
database_url = "mysql://user:password@localhost/dbname"
engine = create_engine(database_url, echo=True)
def create_db_and_tables():
SQLModel.metadata.create_all(engine)
if __name__ == "__main__":
create_db_and_tables()

View File

@@ -0,0 +1,21 @@
from typing import Optional
from sqlmodel import Field, SQLModel, create_engine
class Hero(SQLModel, table=True):
id: Optional[int] = Field(default=None, primary_key=True)
name: str
database_url = "mysql://user:password@localhost/dbname"
engine = create_engine(database_url, echo=True)
def create_db_and_tables():
SQLModel.metadata.create_all(engine)
if __name__ == "__main__":
create_db_and_tables()

View File

@@ -0,0 +1,19 @@
from sqlmodel import Field, SQLModel, create_engine
class Hero(SQLModel, table=True):
id: int | None = Field(default=None, primary_key=True)
name: str = Field(max_length=100)
database_url = "mysql://user:password@localhost/dbname"
engine = create_engine(database_url, echo=True)
def create_db_and_tables():
SQLModel.metadata.create_all(engine)
if __name__ == "__main__":
create_db_and_tables()

View File

@@ -0,0 +1,21 @@
from typing import Optional
from sqlmodel import Field, SQLModel, create_engine
class Hero(SQLModel, table=True):
id: Optional[int] = Field(default=None, primary_key=True)
name: str = Field(max_length=100)
database_url = "mysql://user:password@localhost/dbname"
engine = create_engine(database_url, echo=True)
def create_db_and_tables():
SQLModel.metadata.create_all(engine)
if __name__ == "__main__":
create_db_and_tables()

View File

@@ -0,0 +1,19 @@
from sqlmodel import Field, SQLModel, String, create_engine
class Hero(SQLModel, table=True):
id: int | None = Field(default=None, primary_key=True)
name: str = Field(sa_type=String)
database_url = "mysql://user:password@localhost/dbname"
engine = create_engine(database_url, echo=True)
def create_db_and_tables():
SQLModel.metadata.create_all(engine)
if __name__ == "__main__":
create_db_and_tables()

View File

@@ -0,0 +1,21 @@
from typing import Optional
from sqlmodel import Field, SQLModel, String, create_engine
class Hero(SQLModel, table=True):
id: Optional[int] = Field(default=None, primary_key=True)
name: str = Field(sa_type=String)
database_url = "mysql://user:password@localhost/dbname"
engine = create_engine(database_url, echo=True)
def create_db_and_tables():
SQLModel.metadata.create_all(engine)
if __name__ == "__main__":
create_db_and_tables()

View File

@@ -0,0 +1,19 @@
from sqlmodel import Field, SQLModel, String, create_engine
class Hero(SQLModel, table=True):
id: int | None = Field(default=None, primary_key=True)
name: str = Field(sa_type=String(length=255))
database_url = "mysql://user:password@localhost/dbname"
engine = create_engine(database_url, echo=True)
def create_db_and_tables():
SQLModel.metadata.create_all(engine)
if __name__ == "__main__":
create_db_and_tables()

View File

@@ -0,0 +1,21 @@
from typing import Optional
from sqlmodel import Field, SQLModel, String, create_engine
class Hero(SQLModel, table=True):
id: Optional[int] = Field(default=None, primary_key=True)
name: str = Field(sa_type=String(length=255))
database_url = "mysql://user:password@localhost/dbname"
engine = create_engine(database_url, echo=True)
def create_db_and_tables():
SQLModel.metadata.create_all(engine)
if __name__ == "__main__":
create_db_and_tables()