Simple Query

import os
import sys
from sqlalchemy import Column, ForeignKey, Integer, String
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import relationship
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker

Base = declarative_base()
class City(Base):
    __tablename__ = 'city'
    # Here we define columns for the table person
    # Notice that each column is also a normal Python instance attribute.
    id = Column(Integer, primary_key=True)
    name = Column(String(50), nullable=False)
    province = Column(String(50), nullable=True)
    country = Column(String(50), nullable=True)
# Create an engine that stores data in the local directory's
# sqlalchemy_example.db file.
engine = create_engine('sqlite:///city.db')
# Create all tables in the engine. This is equivalent to "Create Table"
# statements in raw SQL.
Base.metadata.create_all(engine)
DBSession = sessionmaker(bind=engine)
session = DBSession()
# Insert a City in the person table
to = City(name='Toronto', province='Ontario', country = 'Canada')
session.add(to)
session.commit()
# Make a query to find all Cities in the database
cities = session.query(City).all()
cities
[<__main__.City at 0x112cfe278>,
 <__main__.City at 0x112cfe2e8>,
 <__main__.City at 0x112cfe358>,
 <__main__.City at 0x112cfe3c8>,
 <__main__.City at 0x112cbd588>]
for city in cities:
    print(city.id, city.name)
1 Toronto
2 Montreal
3 Waterloo
4 Kitchener
5 Toronto
session.add_all([
    City(name='Montreal', province='Quebec', country = 'Canada'),
    City(name='Waterloo', province='Ontario', country = 'Canada'),
    City(name='Kitchener', province='Ontario', country = 'Canada')
])
session.commit()
cities = session.query(City).all()
for city in cities:
    print(city.id, city.name)
1 Toronto
2 Montreal
3 Waterloo
4 Kitchener
5 Toronto
6 Montreal
7 Waterloo
8 Kitchener
for city in session.query(City).all():
    print(city.id, city.name)
1 Toronto
2 Montreal
3 Waterloo
4 Kitchener
5 Toronto
6 Montreal
7 Waterloo
8 Kitchener