![]() | |
Kris 8 Ltr Evaporative Air Cooler 513cmhJadikan ruangan Anda lebih sejuk dengan menggunakan evaporative air cooler persembahan dari Kris ini. Terbuat dari material berkualitas yang kokoh dan stabil sehingga awet untuk penggunaan jangka panjang. Air cooler ini dibekali berkapasitas tangki 8 liter dengan airflow 513 cmh yang mampu menyejukkan ruangan dengan optimal. Free Klik Disini ! |
Di tutorial ini kita akan belajar cara membuat koneksi database pada FastAPI Framework menggunakan database MYSQL.
Pastikan Anda telah berada pada mode python virtual environment. Ikuti langkah-langkah berikut:
pip install fastapi
pip install sqlalchemy
pip install pymysql
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmakerSQLALCHEMY_DATABASE_URL = "mysql+pymysql://admin:admin@localhost:3306/fastapi"
engine = create_engine(SQLALCHEMY_DATABASE_URL)
SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)Base = declarative_base()
def get_db():
db = SessionLocal()
try:
yield db
finally:
db.close()
from db_config import Base
from sqlalchemy import Column, Integer, Stringclass Users(Base):
__tablename__ = 'users'
id = Column(Integer, primary_key=True)
username = Column(String, unique=True, index=True)
email = Column(String, unique=True, index=True)
from fastapi import FastAPI, Depends
from db_config import get_db
from models import Users
from sqlalchemy.orm import Sessionapp = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}@app.get("/users")
def get_all_users(db: Session=Depends(get_db)):
users = db.query(Users).all()
return users
Depends
decorator. Anda juga dapat memanfaatkan framework seperti Dependency Injector
untuk skenario yang lebih kompleks.