千家信息网

python orm框架SQLAlchemy简单应用(数据库操作)

发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,#_*_coding:utf-8_*_'''创建SQLAlchemy应用基本过程1、创建连接(和关系数据库创建连接)2、声明映射文件(python中到类和数据库中的表做一对一的映射,这样就可以通过py
千家信息网最后更新 2025年02月02日python orm框架SQLAlchemy简单应用(数据库操作)
#_*_coding:utf-8_*_'''创建SQLAlchemy应用基本过程1、创建连接(和关系数据库创建连接)2、声明映射文件(python中到类和数据库中的表做一对一的映射,这样就可以通过python中的类对数据库中到表进行操作)3、创建模式(可以创建表)4、初始化映射实例5、创建会话6、持久化实例对象'''from sqlalchemy import create_engine#创建连接engine = create_engine('mysql://root:1qaz#EDC@192.168.89.101:3306/student', echo=True)'''参数说明:mysql 表示要连接的数据库是mysql数据库root 表示用root账户登录mysql数据库1qaz#EDC 表示连接数据库的root账户的密码@ 是一个符号,规定的格式192.168.89.1.101:3306 表示数据库的连接地址和端口3306soms 表示将要连接的数据库的名字echo=True 表示在执行的时候是否打印sql语句,False为不打印'''#声明映射文件from sqlalchemy.ext.declarative import declarative_base #引入了declarative_base类Base = declarative_base() #实例化了一个declarative_base实例from sqlalchemy import Column, Integer, String #引入类Column, Integer, String类class User(Base): #创建自己的实例类 名字为User 继承Base类    __tablename__ = 'users' #这个属性,表示这个类和数据库中的users表进行映射    id = Column(Integer, primary_key=True) #这个属性表示id在数据库表中代表着一列,Integer表示是整数,而且id是主键    name = Column(String(10)) #这个属性表示在数据库表中也是一列,它的类型是string    passwd = Column(String(10)) #这个属性表示在数据库表中也是一列,它的类型是string    def __repr__(self): #定义了一个方法,目的是将User类更加形象的表示出来,没啥太大用途        return "" % (self.name, self.name, self.passwd)#创建模式,创建数据库表,表名称:usersUser.metadata.create_all(engine)#创建会话(session)'''创建会化'''from sqlalchemy.orm import sessionmaker #引入sessionmaker这个函数Session = sessionmaker(bind=engine) #创建session对话,通过这个session就可以对数据库进行一些操作session = Session() #绑定#持久化一个实例对象ed_user = User(id=2,name='tantianran', passwd='1qaz#EDC') #向数据库表中到列插入数据session.add(ed_user) #将这个实例添加到session中session.commit() #提交


执行结果:


0