Win环境下Python语言通过ODBC/JDBC连接SinoDB数据库

1. 前言

  本文介绍在Windows环境下Python语言通过ODBC和JDBC的方式连接SinoDB数据库,并对数据库进行基本操作。

2. 软件安装包

  SinoDB数据库:SinoDB 12.10.FC8
  SinoDB CSDK(Windows):SinoDB Client-SDK 4.10.FC8
  Python语言开发包:python-3.10.11-amd64.exe
  Python语言IDE:pycharm-professional-2023.1.exe (免费试用30天)
  JDK版本:jdk1.8.0

3. 环境配置

3.1 SinoDB数据库

  安装SinoDB并初始化数据库实例(例如,数据库实例:sinodb_ids,端口:9091),创建一个database,创建一张表;

$echo "create database testdb in datadbs with log;" | dbaccess
$echo "create table t_20230423(c1 int, c2 char(16));" | dbaccess testdb 

3.2 SinoDB CSDK(Windows)

1、安装SinoDB Client-SDK 4.10.FC8
2、配置ODBC数据源

  • 安装CSDK后,打开setnet32.exe,进行配置:

    image

     

    image

  • 配置ODBC确认能连上数据库
    打开ODBC数据源(64位)

    image

     

    image


    如果测试连接失败,检查SinoDB数据库服务器的防火墙是否已经关闭。

4. Python语言通过ODBC连接SinoDB数据库

4.1 下载第三方库

pip install pyodbc

image

image945×216 51.4 KB

4.2 新建一个Python File文件:main.py

import pyodbc

conn = pyodbc.connect(
“DSN=sinodb;”
)

cursor = conn.cursor()

cursor.execute(“SELECT * FROM t_20230423”)

rows = cursor.fetchall()

for row in rows:
print(row)

cursor.close()
conn.close()

4.3 运行程序

image

image945×333 56.9 KB

5. Python语言通过JDBC连接SinoDB数据库

5.1 下载第三方库

pip install jaydebeapi

5.2 新建一个Python File文件:sinodb.py

import jaydebeapi

jclassname = ‘com.informix.jdbc.IfxDriver’
url = ‘jdbc:informix-sqli://192.168.16.21:9091/testdb:INFORMIXSERVER=sinodb_ids’
driver_args = [‘informix’, ‘sinoregal’]
jars = ‘d:/lib/sinodb12.10fc8/ifxjdbc.jar’
conn = jaydebeapi.connect(jclassname, url, driver_args, jars=jars)

cursor = conn.cursor()

cursor.execute(“SELECT * FROM t_20230423”)

rows = cursor.fetchall()

for row in rows:
print(row)

cursor.close()
conn.close()

5.3 设置Java环境变量

安装配置JDK

5.4 运行程序

image

 更多信息内容请移步星瑞格官方社区,期待大家加入  

Sinoregal Tech ForumAsk questions, share solutions, and get to know the Sinoregal community.icon-default.png?t=N7T8https://forum.sinoregal.cn/ 

  • 17
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值