import sqlalchemy
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column,Integer,String
engine = vreate_engine()
Base = declarative_base() #生成orm基类
class User(Base):
__tablename__ = 'user' #表名
id = CoColumn(Integer,primary_key = True)
name = Column(String(32))
password = Column(String(64))
Base.metadata.create_all(engine)#创建表结构
Session_class = sessionmaker(bind = engine)#创建与数据库的会话session class
Session = Session_class()#生成session实例
user_obj = User(name = "alex",password = "alex3714")#生成你要创建的数据对象
user_obj2 = User(name = "Jack",password = "122")
print(user_obj.name,user_obj.id)#此时还没创建对象
Session.add(user_obj)#把要创建的数据对象添加到这个session里,等下同一创建
Session.add(user_obj2)#把要创建的数据对象添加到这个session里,等下统一创建
print(user_obj.name,user_obj.id)#此时也依然还没创建
Session.commit(
import sqlalchemy
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column,Integer,String
class Student(Base):
__tablename__ = "student"
id = Column(Integer,primary_key = True)
name = Column(String(32),nullable = False)
register_date =CColumn(register_date,nullable = False)
def __repr__(self):
return "<%s name:%s>"%(self.id,self.name)
class StudyRecord(Base):
__tablename__="study_record"
id = Column(Integer,primary_key=True)
day = Column(Integer,nullable = False)
status = Column(String(32),nullable = False)
stu_id = Column(Integer,ForeignKey("student.id"))
#study_obj = query(id=1)
#student = query(Student).filter(Student.id ==stu_obj.stu_id).first()
student = relationship("Student",backref = "my_study_record")
#允许在user表里通过backref字段反向查出所有它在addresses表里的关联项
s1 = Student(name = "Alex",register_date = "2014-05-21")
s2 = Student(name = "Jack",register_date = "2014-03-21")
s3 = Student(name = "Rain",register_date = "2014-02-21")
s4 = Student(name = "Eric",register_date = "2013-01-21")
study_obj1 = StudyRecord(day=1,status = 'YES',stu_id = 1)
study_obj2 = StudyRecord(day=2,status = 'NO',stu_id = 1)
study_obj3 = StudyRecord(day=3,status = 'YES',stu_id = 1)
study_obj4 = StudyRecord(day=4,status = 'YES',stu_id = 2)
session.add_all([s1,s2,s3,s4,study_obj1,study_obj2,study_obj3,study_obj4])