Python
Column ve type
Column(Integer), Column(String) ile sütun türlerini öğrenirsin.
Column ve türler
Column, bir tablo sütununu tanımlar. İlk parametre olarak bir tür alır: Integer, String, Float, Boolean, DateTime gibi.
class Product(Base):
__tablename__ = "products"
id = Column(Integer, primary_key=True)
name = Column(String)
price = Column(Float)
in_stock = Column(Boolean)
primary_key=True birincil anahtarı, nullable=False boş olamayan sütunu belirtir. String(50) gibi uzunluk verilebilir.
türlerin anlamı
Her sütun türü veritabanında karşılık gelen bir türe çevrilir. Integer tamsayı, String metin, Float ondalık sayı, Boolean doğru/yanlış depolar.
amount = Column(Integer) # tamsayı
label = Column(String(50)) # 50 karaktere kadar metin
ratio = Column(Float) # ondalık
active = Column(Boolean) # doğru/yanlış
Tür seçimi, doğrulama ve verimlilik için önemlidir. Yanlış tür veri kaybına yol açabilir.
Uygulama Product modeli tanımla
from sqlalchemy import create_engine, Column, Integer, String, Float ve from sqlalchemy.orm import declarative_base ile başla. Base = declarative_base() tanımla. class Product(Base): içinde __tablename__ = "products" ekle. id = Column(Integer, primary_key=True), name = Column(String) ve price = Column(Float) sütunlarını ekle. print(Product.__tablename__) ile tablo adını yazdır.
Örnek çözümü göster
from sqlalchemy import create_engine, Column, Integer, String, Float
from sqlalchemy.orm import declarative_base
Base = declarative_base()
class Product(Base):
__tablename__ = "products"
id = Column(Integer, primary_key=True)
name = Column(String)
price = Column(Float)
print(Product.__tablename__)
Kendini test et
-
Column(Integer, primary_key=True) ne belirtir?
- Otomatik artan sütunu
- Yabancı anahtar sütunu
- Boş olabilen sütunu
- Birincil anahtar sütunu
Cevabı göster
Birincil anahtar sütunu — primary_key=True birincil anahtar sütunu olduğunu belirtir.
-
String sütun tanımını tamamla
class Product(Base):
__tablename__ = "products"
name = Column(____)
Cevabı göster
class Product(Base):
__tablename__ = "products"
name = Column(String)
-
tür kavramlarını eşleştir
- Integer
- Tamsayı depolar
- String
- Metin depolar
- Float
- Ondalık depolar
- Boolean
- Doğru/yanlış depolar
Sıradaki ders: Query