Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from sqlalchemy import create_engine
- from sqlalchemy.ext.declarative import declarative_base
- from sqlalchemy import Column, Integer, String
- from sqlalchemy.orm import sessionmaker
- engine = create_engine('sqlite:///:memory:', echo=True)
- Base = declarative_base()
- Session = sessionmaker(bind=engine)
- session = Session()
- class User(Base):
- __tablename__ = 'users'
- id = Column(Integer, primary_key=True)
- name = Column(String)
- fullname = Column(String)
- password = Column(String)
- def __repr__(self):
- return "User<name={}, fullname={}, password={}>".format(self.name, self.fullname, self.password)
- # Create all tables
- Base.metadata.create_all(engine)
- ed_user = User(name='ed', fullname='Ed Jones', password='edspassword')
- session.add(ed_user)
- session.add_all([
- User(name='wendy', fullname='Wendy Williams', password='foobar'),
- User(name='mary', fullname='Mary Contrary', password='xxg527'),
- User(name='fred', fullname='Fred Flinstone', password='blah')
- ])
- ed_user.password = 'f8s7ccs'
- print(session.dirty) # Note: session.dirty without print does nothing
- 2016-01-26 07:57:43,149 INFO sqlalchemy.engine.base.Engine SELECT CAST('test plain returns' AS VARCHAR(60)) AS anon_1
- 2016-01-26 07:57:43,149 INFO sqlalchemy.engine.base.Engine ()
- 2016-01-26 07:57:43,150 INFO sqlalchemy.engine.base.Engine SELECT CAST('test unicode returns' AS VARCHAR(60)) AS anon_1
- 2016-01-26 07:57:43,150 INFO sqlalchemy.engine.base.Engine ()
- 2016-01-26 07:57:43,151 INFO sqlalchemy.engine.base.Engine PRAGMA table_info("users")
- 2016-01-26 07:57:43,151 INFO sqlalchemy.engine.base.Engine ()
- 2016-01-26 07:57:43,152 INFO sqlalchemy.engine.base.Engine
- CREATE TABLE users (
- id INTEGER NOT NULL,
- name VARCHAR,
- fullname VARCHAR,
- password VARCHAR,
- PRIMARY KEY (id)
- )
- 2016-01-26 07:57:43,152 INFO sqlalchemy.engine.base.Engine ()
- 2016-01-26 07:57:43,152 INFO sqlalchemy.engine.base.Engine COMMIT
- IdentitySet([])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement