注册
python连接dm测试
培训园地/ 文章详情 /

python连接dm测试

Dora 2023/08/02 1539 0 0

1 编译python

1.1 准备环境

数据库安装至/opt/dmdbms 涉及配置环境变量
安装步骤忽略,自行安装
使用数据库自带python

# 准备环境,数据库已安装完成
[root@~]$ cd /opt/dmdbms/drivers/python/dmPython/ 
[root@~]$ vim ~/.bash_profile
export DM_HOME=/opt/dmdbms
export LD_LIBRARY_PATH=$DM_HOME/bin:$LD_LIBRARY_PATH
export PATH=$PATH:$HOME/bin:$DM_HOME/bin
[root@~]$ source ~/.bash_profile

1.2 编译驱动

# 编译驱动期间警告信息可忽略,只需要关注错误的信息即可
# 若有报错见报错处理
[root@~]$ python setup.py install

1.png

# 查看版本
[root@~]$ python --version

2.png

2 验证驱动

# 验证驱动
# 若有报错见报错处理,不影响使用
[root@~]$ pip list

3.png

3 代码测试

3.1 测试连接

# 测试连接,添加以下内容
[root@~]$ vim py_conn.py
#!/usr/bin/python
#coding:utf-8
import dmPython
try:
    conn = dmPython.connect(user='SYSDBA', password='SYSDBA', server='localhost',  port=5236)
    cursor  = conn.cursor()
    print('python: conn success!')
    conn.close()
except (dmPython.Error, Exception) as err:
    print(err)
[root@~]$ python py_conn.py

4.png

3.2 测试增删改查

# 测试增删改查,添加以下内容
[root@~]$ vi date.py
from datetime import date
d = date(2022,12,01)
print (d)
import dmPython
conn = dmPython.connect()
cursor = conn.cursor()
cursor.execute("create table  test_date (c1 int identity(1, 1) not null,c2 date)")
cursor.execute("insert into test_date(c2) values(?)", d)
Seq_params = [(d,), (d,)]
cursor.executemany("insert into test_date values(?)", Seq_params)
cursor.executemany("update test_date set c2='2022,01,01' where c1='1'", Seq_params)
cursor.execute("select * from test_date")
cursor.description
cursor.fetchall()
# 测试增删改查
[root@~]$ python date.py

5.png

# 登录数据库查询
SQL> select * from test_date;

6.png

4 报错处理

4.1 Python.h没有那个文件或目录

7.png

#缺失python-devel包
[root@~]$ yum install python-devel

4.2 pip没有这个命令

# 安装pip
[root@~]$ wget https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz

或者手动下载上传[pip-9.0.1.tar.gz]
8.png

[root@~]$ tar xf pip-9.0.1.tar.gz
[root@~]$ cd pip-9.0.1
[root@~]$ python setup.py install

9.png

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服