ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Python 应用程序连接 OceanBase 数据库

2022-02-22 13:31:45  阅读:272  来源: 互联网

标签:Python 数据库 应用程序 python Connector OceanBase test


OceanBase Connector/J 为基于 Python 开发的应用程序提供与 OceanBase 数据库的连接。本文主要介绍该连接方式的前提条件和操作步骤。

前提条件

  • 确保设置了基本的数据库开发环境。

  • 确保计算机上的 Java 环境为 Java JDK 8 版本。

  • 确保计算机上的 Python 环境为 3.6.8 版本。

  • 请联系技术支持人员获取 OceanBase Connector/J 驱动程序安装包。

操作步骤

  1. 安装 JayDeBeApi,推荐使用 pip 安装方式,详细信息参见 使用 pip 安装 JayDeBeApi

  2. 将 OceanBase Connector/J 的 JAR 安装包放入本地路径中。

  3. 在数据库中创建测试对象。示例如下:

    CREATE TABLE test_python(id NUMBER, name VARCHAR2(20));
    INSERT INTO test_python VALUES (1, 'test1');
    INSERT INTO test_python VALUES (2, 'test2');
    COMMIT;
  4. 与 OceanBase 数据库建立连接。即在如下 Python 代码段中,填写相应的参数信息,如果获得正确的运行结果,则说明数据库连接成功。

    • 在 url 字段填入相应的 IP 地址和端口号。

    • 在 driver 字段输入类路径。

    • 在 jarFile 字段填入相应的 JAR 安装包路径。

    #!/usr/bin/env python3.6
    # -*- coding: UTF-8 -*-
    encoding = "utf8"
    import jaydebeapi
    def ob_test():     //ob_test() 为自定义 Python 项目名称。
            url = 'jdbc:oceanbase://host:port/database'
            user = 'userxxx'
            password = 'passxxx'
            driver = 'com.alipay.oceanbase.jdbc.Driver'
            jarFile = './oceanbase-client-2.2.3.jar'
            sqlStr = 'select * from test_python'     // SQL 测试语句
            # conn=jaydebeapi.connect('oracle.jdbc.driver.OracleDriver','jdbc:oracle:thin:@127.0.0.1:1521/orcl',['hwf_model','hwf_model'],'E:/pycharm/lib/ojdbc14.jar')
            conn = jaydebeapi.connect(driver, url, [user, password], jarFile)
            curs = conn.cursor()
            curs.execute(sqlStr)
            result = curs.fetchall()
            print(result)
            curs.close()
            conn.close()
    ob_test()

关于 OceanBase Connector/J 的详细使用信息,请参考文档 OceanBase Connector/J 开发者指南

标签:Python,数据库,应用程序,python,Connector,OceanBase,test
来源: https://www.cnblogs.com/hushaojun/p/15922694.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有