初学ORM 工具之 SQLAlchemy 操作MySQL,结果混淆了sessionmaker和它的实例。
sessionmaker需要先绑定engine,然后实例化一个session,这个session才可以用于CURD。
使用orm插入数据
# SQLAlchemy如何创建表并增加一条记录 第一步先导入模块
from sqlalchemy import create_engine # sqlalchemy的引擎
from sqlalchemy import Column,String,Integer # 字段类,字符串类和整形
from sqlalchemy.orm import sessionmaker # 预配置范围的会话(session),代替connect执行数据库操作
from sqlalchemy.ext.declarative import declarative_base # 用于创建数据库中表的基类
#第二步构造基类
Base=declarative_base() #构造基类
#第三步构造一个表
class math(Base):#必须继承declaraive_base得到的基类
__tablename__ = "math" #用__tablename__来指定这个类对应什么表,如果这个表在库中不存在,SQLAlchemy会帮我们创建
id=Column(String(20),primary_key=True) #Column类创建一个字段
name=Column(String(50))
ms=Column(Integer)
#第四步建立与数据库的连接
if __name__=='__main__':
engine=create_engine('mysql+mysqlconnector://root:65578466578@127.0.0.1:3306/score') #建立数据库连接
DBSession=sessionmaker(bind=engine) # 实例化 sessionmaker,绑定engine
Session=DBSession