簡單記錄一下SQLAlchemy的用法
db.py
#!C:\Python25\python.exe
#coding: utf-8
from sqlalchemy import *
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import relation, sessionmaker
Base = declarative_base()
# Job
class Job(Base):
__tablename__ = 'Job'
id = Column(Integer, Sequence('id_seq'), primary_key=True)
jod_dd = Column(Date)
job_02 = Column(String(50))
job_03 = Column(String(50))
job_04 = Column(Text)
job_05 = Column(Integer)
job_06 = Column(String(2))
job_07 = Column(Text)
job_08 = Column(Date)
job_09 = Column(Date)
job_10 = Column(Date)
job_11 = Column(Text)
def __init__(self, User, Dept):
self.job_02 = User
self.job_03 = Dept
def __repr__(self):
return "Job<'%s', '%s'>" % (self.job_02, self.job_03)
# Comment
class Comment(Base):
__tablename__ = "Comment"
id = Column(Integer, Sequence('id_seq'), primary_key=True)
comment_f = Column(Integer)
comment_01 = Column(Text)
comment_dd = Column(Date)
comment_02 = Column(String(100))
def __init__(self):
pass
def __repr__(self):
pass
# see http://www.sqlalchemy.org/docs/07/dialects/sqlite.html
from sqlite3 import dbapi2 as sqlite
engine = create_engine('sqlite:///twcsms.db', module=sqlite, echo=True)
# created in memory
# engine = create_engine('sqlite:///:memory:', echo=True)
Base.metadata.create_all(engine)
test_db.py
#!C:\Python25\python.exe
#coding: utf-8
import unittest
import db
from sqlalchemy.orm import relation, sessionmaker
class TestDb(unittest.TestCase):
def test_InsertJob(self):
# create session
Session = sessionmaker(bind=db.engine)
created_record = db.Job("Sunset", "Orz")
session = Session()
session.add(created_record)
session.commit()
if __name__ == "__main__":
unittest.main()
執行結果






0 意見:
張貼意見