您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python+ sqlalchemy实现orm创建表和查询操作

bubuko 2022/1/25 19:38:38 python 字数 2319 阅读 817 来源 http://www.bubuko.com/infolist-5-1.html

import mysqlconnector from sqlalchemy import create_engine from sqlalchemy.ext.declarative import declarative_base from sqlalchemy import Column,Integ ...

import mysqlconnector

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+mysqlconnector://root:root@localhost/quey",encoding=‘utf-8‘,echo=True)

生成orm基类

base=declarative_base()
class user(base):
tablename = ‘users‘ #表名
id = Column(Integer, primary_key=True)
name = Column(String(32))
password = Column(String(64))

class class_name(base):
tablename = ‘class‘ # 表名
id = Column(Integer, primary_key=True)
name = Column(String(32))
password = Column(String(64))
password1 = Column(String(64))

base.metadata.create_all(engine) #创建表结构

Session_class=sessionmaker(bind=engine) ##创建与数据库的会话,class,不是实例

生成session实例

Session = Session_class()

for i in range(0,10):

user_obj = user(name="{}".format(i),password="123456") #插入你要创建的数据对象,每执行一次都会新增一次数据。

# print(user_obj.name,user_obj.id,‘1111‘) #此时还没创建对象呢,不信你打印一下id发现还是None

Session.add(user_obj)#把要创建的数据对象添加到这个session里

# print(user_obj.name,user_obj.id,‘2222‘) #此时也依然还没创建

Session.commit() #提交,使前面修改的数据生效

只查询第一条记录

result = Session.query(user).first()
print(type(result.id),type(result.name),type(result.password))
print("查询结果:" + str(result.id),result.name,result.password)

通过ID字段查询

持续更新

python+ sqlalchemy实现orm创建表和查询操作

原文:https://www.cnblogs.com/zhangyu-zhj/p/13198476.html


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶