pymsql 与 SQLAlchemy 操作数据库的区别

在这里要先说清楚的是,pymsql 是直接操控关系型数据库了,
SQLAlchemy 是通过OPM来进行操控的。

pymsql

1.是获得连接对象

import pymysql #导入库
connection = pymysql.connect(
    host = 'localhost',  #就写这个就好
    user = 'root',   #数据库用户名,可以登录MySQL查看
    password = '******', #密码是数据库的密码
    db = 'test_db',  #数据库的名称
    charset = 'utf8',#不能是 utf-8
    cursorclass = pymysql.cursors.DictCursor #游标类型
    )

2.是获取连接对象

是通过连接对象的方法获取游标对象,以此来操作数据库。

cursor = connection.cursor() #connection 是上文提到的连接对象


SQLAlchemy

1、是数据库连接配置

SQLALCHEMY_DATABASE_URL = "mysql+pymysql://root:andy123456@localhost/idiom?charset=utf8mb4"

2、是通过配置创建引擎

engine = create_engine(SQLALCHEMY_DATABASE_URL)

3、是通过引擎创建数据库会话

SessionLocal = sessionmaker(autocommit= False,autoflush =False,bind = engine)

通过这个会话获得的对象就可以用来操作

db = SessionLocal()

4、创建数据模型(ORM)

#定义 User 类
class User(Base):
    __tanlename__ = "user"   #定义表名
    # 定义属性
    id = Column(Integer,primary_key=True,index=True)
    openid = Column(String(80))

5、通过 db 来操作ORM

return db.query(User).all()
  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

落春只在无意间

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值