好久没有更新Blog了

今天来聊一聊 Python 的 ORM 框架 SQLAlchemy 有些同学已经听说过这个框架的大名了,也听说了 SQLAlchemy 没有 Django 的 Models 好用

我在这里官宣辟谣一下啊, Models 紧紧只是配置和使用比较简单(这特么就是废话),因为他是Django自带的ORM框架,也正是因为是Django原生的,所以兼容性远远不如SQLAlchemy

真正算得上全面的ORM框架必然是我们的SQLAlchemy ORM框架,它可以在任何使用SQL查询时使用

当然了,无论是使用什么ORM框架,都是为了方便不熟练数据库的同学使用的,我个人还是比较推崇原生 SQL ,也建议每位同学攻克 SQL 的难关

废话不多说,我们来看一下 SQLAlchemy 如何使用:

1.创建数据表

 1 # ORM中的数据表是什么呢?
 2 # Object Relation Mapping
 3 # Object - Table 通过 Object 去操纵数据表
 4 # 从而引出了我们的第一步创建数据表 - 创建Object
 5 # 1. 创建Object
 6 # class User(object):
 7 #     pass
 8 
 9 # 2. 让Object与数据表产生某种关系 也就是让Object与数据表格式极度相似
10 # 导入官宣基础模型
11 from sqlalchemy.ext.declarative import declarative_base
12 # 实例化官宣模型 - Base 就是 ORM 模型
13 Base = declarative_base()
14 # 当前的这个Object继承了Base也就是代表了Object继承了ORM的模型
15 class User(Base):  # 相当于 Django Models中的 Model
16     # 为Table创建名称
17     __tablename__ = "user"
18     # 创建ID数据字段 , 那么ID是不是一个数据列呢? 也就是说创建ID字段 == 创建ID数据列
19     from sqlalchemy import Column,Integer,String
20     # id = Column(数据类型,索引,主键,外键,等等)
21     # int == Integer
22     id = Column(Integer,primary_key=True,autoincrement=True)
23     # str == char(长度) == String(长度)
24     name = Column(String(32),index=True)
25 
26 # 3.去数据库中创建数据表? or 先连接数据库?
27 # 3.去连接数据库 创建数据引擎
28 from sqlalchemy import create_engine
29 # 创建的数据库引擎
30 engine = create_engine("mysql+pymysql://root:DragonFire@127.0.0.1:3306/dragon?charset=utf8")
31 
32 # Base 自动检索所有继承Base的ORM 对象 并且创建所有的数据表
33 Base.metadata.create_all(engine)
my_create_table

相关文章:

  • 2022-01-18
  • 2022-12-23
  • 2022-12-23
  • 2021-11-19
  • 2022-12-23
  • 2021-11-19
  • 2022-02-08
猜你喜欢
  • 2022-12-23
  • 2021-07-12
相关资源
相似解决方案