首页 > 代码库 > python-SQLAlchemy详解
python-SQLAlchemy详解
1.SQLAlchemy的作用
ORM对象关系映射技术
2.SQLAlchemy安装
pip install SQLAlchemy
3.使用示例
# 导入:from sqlalchemy import Column, String, create_engine,ForeignKeyfrom sqlalchemy.orm import sessionmaker,relationshipfrom sqlalchemy.ext.declarative import declarative_base# 创建对象的基类:Base = declarative_base()# 初始化数据库连接(postgresql默认使用psycopg2驱动,可省略):engine = create_engine(‘postgresql+psycopg2://username:password@host:post/dbname‘)# 创建DBSession类型:DBSession = sessionmaker(bind=engine)# 定义User对象:class User(Base): # 表的名字: __tablename__ = ‘test2‘ # 表的结构: id = Column(String(20), primary_key=True) name = Column(String(20)) # 一对多: books=relationship(‘Book‘)class Book(Base): # 表的名字: __tablename__ = ‘test3‘ # 表的结构: id = Column(String(20), primary_key=True) name = Column(String(20)) # “多”的一方的book表是通过外键关联到user表的: user_id=Column(String(20),ForeignKey(‘test2.id‘)) session=DBSession()new_user=User(id=‘5‘,name=‘Bob‘)session.add(new_user)new_book=Book(id=‘1‘,name=‘linux‘,user_id=‘5‘)session.add(new_book)new_book=Book(id=‘2‘,name=‘python‘,user_id=‘5‘)session.add(new_book)session.commit()session.close()session=DBSession()user=session.query(User).filter(User.id==‘5‘).one()print ‘type:‘,type(user)print ‘name:‘,user.nameprint ‘books:‘,user.bookssession.close()
运行结果:
python-SQLAlchemy详解
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。