当前位置:Gxlcms > 数据库问题 > SQLAlchemy(一):SQLAlchemy去连接数据库、ORM介绍、将ORM模型映射到数据库中

SQLAlchemy(一):SQLAlchemy去连接数据库、ORM介绍、将ORM模型映射到数据库中

时间:2021-07-01 10:21:17 帮助过:37人阅读

  • 然后使用create_engine创建一个引擎engine

  • 然后再调用这个引擎的connect方法,就可以得到这个对象

  • 然后就可以通过这个对象对数据库进行操作了

    engine = create_engine(DB_URI)
    
    # 判断是否连接成功
    conn = engine.connect()
    result = conn.execute(‘select 1‘)
    print(result.fetchone())
    
  • 2、ORM介绍:

    1. ORM:Object Relationship Mapping
    2. 大白话:对象模型与数据库表的映射

    3、将ORM模型映射到数据库中:

    1. declarative_base根据engine创建一个ORM基类。

      from sqlalchemy.ext.declarative import declarative_base
      engine = create_engine(DB_URI)
      Base = declarative_base(engine)
      
    2. 用这个Base类作为基类来写自己的ORM类。要定义__tablename__类属性,来指定这个模型映射到数据库中的表名。

      class Person(Base):
          __tablename__ = ‘person‘
      
    3. 创建属性来映射到表中的字段,所有需要映射到表中的属性都应该为Column类型:

      class Person(Base):
          __tablename__ = ‘person‘
          # 在这个ORM模型中创建一些属性,来跟表中的字段进行一一映射。这些属性必须是sqlalchemy给我们提供好的数据类型。
          id = Column(Integer,primary_key=True,autoincrement=True)
          name = Column(String(50))
          age = Column(Integer)
      
    4. 使用Base.metadata.create_all()来将模型映射到数据库中。

      Base.metadata.create_all()
      
    5. 一旦使用Base.metadata.create_all()将模型映射到数据库中后,即使改变了模型的字段,也不会重新映射了。

    SQLAlchemy(一):SQLAlchemy去连接数据库、ORM介绍、将ORM模型映射到数据库中

    标签:contain   ring   模型   base   import   mysql   one   meta   name   

    人气教程排行