pymsql 与 SQLAlchemy 操作数据库的区别
生活随笔
收集整理的這篇文章主要介紹了
pymsql 与 SQLAlchemy 操作数据库的区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
pymsql 與 SQLAlchemy 操作數據庫的區別
- pymsql
- 1.是獲得連接對象
- 2.是獲取連接對象
- SQLAlchemy
- 1、是數據庫連接配置
- 2、是通過配置創建引擎
- 3、是通過引擎創建數據庫會話
- 4、創建數據模型(ORM)
- 5、通過 db 來操作ORM
在這里要先說清楚的是,pymsql 是直接操控關系型數據庫了,
而SQLAlchemy 是通過OPM來進行操控的。
pymsql
1.是獲得連接對象
import pymysql #導入庫 connection = pymysql.connect(host = 'localhost', #就寫這個就好user = 'root', #數據庫用戶名,可以登錄MySQL查看password = '******', #密碼是數據庫的密碼db = 'test_db', #數據庫的名稱charset = 'utf8',#不能是 utf-8cursorclass = 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()總結
以上是生活随笔為你收集整理的pymsql 与 SQLAlchemy 操作数据库的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ORM MVC、模板引擎介绍(建议收藏)
- 下一篇: linux cmake编译源码,linu