开发者社区> 问答> 正文

Python代码中连接OceanBase Oracle租户支持ORM框架吗?

Python代码中连接OceanBase Oracle租户支持ORM框架吗?

展开
收起
小南瓜子 2024-08-01 14:40:10 166 0
2 条回答
写回答
取消 提交回答
  • Python连接OceanBase Oracle租户可以通过基于JDBC的ORM框架实现,比如SQLAlchemy。您可以参考SpringBoot等使用JDBC的ORM框架文档,来配置OceanBase的JDBC驱动,从而在Python应用中连接Oracle模式的租户。

    2024-08-02 09:57:15
    赞同 3 展开评论 打赏
  • 北京阿里云ACE会长

    OceanBase 提供的驱动程序能够被 ORM 框架支持。使用 SQLAlchemy 时,你可以定义模型类来映射数据库表,并通过这些类来执行 CRUD(创建、读取、更新、删除)操作。

    from sqlalchemy import create_engine
    from sqlalchemy.orm import sessionmaker
    from sqlalchemy.ext.declarative import declarative_base
    
    # 定义数据库连接字符串,这里使用 cx_Oracle 作为Oracle兼容的驱动
    DATABASE_URL = "oracle+cx_oracle://user:password@host:port/sid"
    
    # 创建数据库引擎
    engine = create_engine(DATABASE_URL)
    
    # 创建会话类
    Session = sessionmaker(bind=engine)
    
    # 创建基类
    Base = declarative_base()
    
    # 定义一个模型类
    class User(Base):
        __tablename__ = 'users'
    
        id = Column(Integer, primary_key=True)
        name = Column(String)
    
    # 创建数据库表(如果它们还不存在)
    Base.metadata.create_all(engine)
    
    # 创建会话
    session = Session()
    
    # 添加一个新用户
    new_user = User(name='John Doe')
    session.add(new_user)
    
    # 提交事务
    session.commit()
    
    # 查询用户
    users = session.query(User).all()
    for user in users:
        print(user.name)
    
    # 关闭会话
    session.close()
    
    2024-08-02 09:38:40
    赞同 3 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Oracle云上最佳实践 立即下载
迁移 ORACLE 最佳实践 立即下载
自研金融数据库OceanBase的创新之路 立即下载