ORM操作mysql
Posted 疯子7314
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ORM操作mysql相关的知识,希望对你有一定的参考价值。
创建表和添加数据
import sqlalchemy
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("mysql+pymysql://root:[email protected]/test_db", echo=True)#echo=True可以查看详细信息
Base = declarative_base()
#创建表
class User(Base):
__tablename__ = ‘user‘#表名
id = Column(Integer, primary_key=True)
name = Column(String(32))
password = Column(String(64))
def __repr__(self):#显示ORM查询执行后的结果(不加这个方法返回的是内存地址)
return ‘%s:%s‘ % (self.name, self.password)
Base.metadata.create_all(engine) #创建表结构
#创建连接
Session_class = sessionmaker(bind=engine) #创建与数据库的会话session class,注意,这里返回的是一个类,不是一个实例
session = Session_class()#生成session实例 #可以先理解成curson游标
#查询
# data = session.query(User).filter(User.id < 2).all()#是一个列表
data = session.query(User).filter(User.id > 2).filter(User.id < 5)
print(data)
#插入数据
user_obj1 = User(name=‘lizhao‘, password=‘lizhaoqwe123‘)#生成要创建的数据对象
user_ibj2 = User(name=‘test‘, password=‘testqwe123‘)
session.add(user_obj1)
session.add(user_ibj2)
session.commit()#必须commit之后才会添加数据
以上是关于ORM操作mysql的主要内容,如果未能解决你的问题,请参考以下文章