当我在下面运行测试程序时,我们得到SQLCODE错误1042。环境的详细信息(mac High Sierra 10.13.6(17G65)/ py 3.6 / ibm_db 2.0.8a0)可以在下面找到。一直在查看几个(github)问题和帖子。
我通过设置
找到了解决方案$ export DYLD_LIBRARY_PATH="$HOME/anaconda3/envs/myenv/lib/python3.6/site-packages/ibm_db-2.0.9-py3.6-macosx-10.7-x86_64.egg/clidriver/lib"
$ python test_ibm_db.py
不幸的是,我们需要在不同虚拟环境下的jupyter Notebook环境中运行。这要求将DYLD_LIBRARY_PATH设置为每个虚拟环境。
根据问题#34(https://github.com/ibmdb/node-ibm_db/issues/34),最后一条评论为[Feb. 2月。 2016]“现在,无需在Mac上为ibm_db设置DYLD_LIBRARY_PATH即可工作。此问题已修复,使用将不再在Mac上看到SQL1042C错误。” ...但是,我没有发现这太正确了。
有人知道是否已部署修补程序吗?
我试图在运行的进程中执行os.environ ['DYLD_LIBRARY_PATH'],但在“导入ibm_db”时仍然失败。参见示例:
os.putenv('DYLD_LIBRARY_PATH', dylibPath)
os.environ['DYLD_LIBRARY_PATH'] = dylibPath
import ibm_db
欢迎任何提示。另外,是否有办法在导入时传递DYLD_LIBRARY_PATH设置?
在虚拟环境“ ibmdb”上的ibm_db easy_install
creating ~/anaconda3/envs/ibmdb/lib/python3.6/site-packages/ibm_db-2.0.9-py3.6-macosx-10.7-x86_64.egg
Extracting ibm_db-2.0.9-py3.6-macosx-10.7-x86_64.egg to ~/anaconda3/envs/ibmdb/lib/python3.6/site-packages
Adding ibm-db 2.0.9 to easy-install.pth file
Installed ~/anaconda3/envs/ibmdb/lib/python3.6/site-packages/ibm_db-2.0.9-py3.6-macosx-10.7-x86_64.egg
Processing dependencies for ibm_db
Finished processing dependencies for ibm_db