Когда я запускаю тестовую программу ниже, мы получаем ошибку 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 был установлен для каждого виртуального env.
В соответствии с проблемой № 34 (https://github.com/ibmdb/node-ibm_db/issues/34) в последнем комментарии говорится [февраль 2016 г.] "Теперь нет необходимости устанавливать DYLD_LIBRARY_PATH на Mac для работы ibm_db. Эта проблема исправлена, и ее использование не будетсм. ошибку SQL1042C на Mac. "... Тем не менее, я не нашел, что это тоже было правдой.
Кто-нибудь знает, было ли установлено исправление?
Я пытался сделать os.environment ['DYLD_LIBRARY_PATH'] в работающем процессе, но все равно не удалось выполнить операцию «import ibm_db»).Смотрите пример:
os.putenv('DYLD_LIBRARY_PATH', dylibPath)
os.environ['DYLD_LIBRARY_PATH'] = dylibPath
import ibm_db
Любой совет приветствуется.Также, если есть способ передать параметр DYLD_LIBRARY_PATH при импорте?
ibm_db easy_install в виртуальной среде 'ibmdb'
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