Db2

 View Only
  • 1.  ibm_db driver for Python 3.8 (Windows)

    Posted Tue June 02, 2020 02:41 AM
    Hi there,

    Is there an ibm_db driver for Python 3.8 ?
    If yes, then from where I can download the same ?

    Thanks.

    ------------------------------
    Gagan
    ------------------------------

    #Db2


  • 2.  RE: ibm_db driver for Python 3.8 (Windows)

    Posted Tue June 02, 2020 11:22 AM
    Hi Gagan,

    Support for Python 3.8 will be available in this month.

    Thanks,
    Saba

    ------------------------------
    Saba Kauser
    ------------------------------



  • 3.  RE: ibm_db driver for Python 3.8 (Windows)

    Posted Wed June 03, 2020 12:09 PM

    Hi Saba,

    Thank you.

    One more question - do you know where can I get Db2 drivers (ibm_db2 and pdo_ibm extension files) for PHP 7.4 ?  I am using Db2 11.5 on Windows 10 (64-bit).


    Best,

    Gagan



    ------------------------------
    Gagan Kakkar
    ------------------------------



  • 4.  RE: ibm_db driver for Python 3.8 (Windows)

    Posted Thu June 04, 2020 10:09 AM
    What is it that changes in Python between releases that causes drivers like DB2 to fail? I would think there would be more compatibility between releases.

    ------------------------------
    David Adler
    ------------------------------



  • 5.  RE: ibm_db driver for Python 3.8 (Windows)

    Posted Tue June 23, 2020 11:16 AM
    Hi David,

    I also thought so, but unfortunately that's not the case.
    The same issue I am facing with PHP 7.4 driver also.
    I think IBM should release compatible drivers (for latest Python, PHP etc) with every Db2 release.

    Regards,
    Gagan



    ------------------------------
    Gagan Kakkar
    ------------------------------



  • 6.  RE: ibm_db driver for Python 3.8 (Windows)

    Posted Tue June 30, 2020 12:17 PM
    Should this also support Django? I installed python 3.8, django, ibm_db and ibm_db_python.

    My python 3.7 works fine with Django and DB2.

    When I try to start my application, I got:
    E:\dwacode\django\dwadb2>python manage.py runserver 0.0.0.0:81
    Watching for file changes with StatReloader
    Exception in thread django-main-thread:
    Traceback (most recent call last):
    File "d:\python38\lib\site-packages\django\db\utils.py", line 111, in load_backend
    return import_module('%s.base' % backend_name)
    File "d:\python38\lib\importlib\__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
    File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
    File "<frozen importlib._bootstrap>", line 991, in _find_and_load
    File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
    File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
    File "<frozen importlib._bootstrap_external>", line 783, in exec_module
    File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
    File "d:\python38\lib\site-packages\ibm_db_django\base.py", line 53, in <module>
    import ibm_db_django.pybase as Base
    File "d:\python38\lib\site-packages\ibm_db_django\pybase.py", line 38, in <module>
    from django.utils import six
    ImportError: cannot import name 'six' from 'django.utils' (d:\python38\lib\site-packages\django\utils\__init__.py)

    The above exception was the direct cause of the following exception:

    Traceback (most recent call last):
    File "d:\python38\lib\threading.py", line 932, in _bootstrap_inner
    self.run()
    File "d:\python38\lib\threading.py", line 870, in run
    self._target(*self._args, **self._kwargs)
    File "d:\python38\lib\site-packages\django\utils\autoreload.py", line 53, in wrapper
    fn(*args, **kwargs)
    File "d:\python38\lib\site-packages\django\core\management\commands\runserver.py", line 109, in inner_run
    autoreload.raise_last_exception()
    File "d:\python38\lib\site-packages\django\utils\autoreload.py", line 76, in raise_last_exception
    raise _exception[1]
    File "d:\python38\lib\site-packages\django\core\management\__init__.py", line 357, in execute
    autoreload.check_errors(django.setup)()
    File "d:\python38\lib\site-packages\django\utils\autoreload.py", line 53, in wrapper
    fn(*args, **kwargs)
    File "d:\python38\lib\site-packages\django\__init__.py", line 24, in setup
    apps.populate(settings.INSTALLED_APPS)
    File "d:\python38\lib\site-packages\django\apps\registry.py", line 114, in populate
    app_config.import_models()
    File "d:\python38\lib\site-packages\django\apps\config.py", line 211, in import_models
    self.models_module = import_module(models_module_name)
    File "d:\python38\lib\importlib\__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
    File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
    File "<frozen importlib._bootstrap>", line 991, in _find_and_load
    File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
    File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
    File "<frozen importlib._bootstrap_external>", line 783, in exec_module
    File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
    File "d:\python38\lib\site-packages\django\contrib\auth\models.py", line 2, in <module>
    from django.contrib.auth.base_user import AbstractBaseUser, BaseUserManager
    File "d:\python38\lib\site-packages\django\contrib\auth\base_user.py", line 47, in <module>
    class AbstractBaseUser(models.Model):
    File "d:\python38\lib\site-packages\django\db\models\base.py", line 121, in __new__
    new_class.add_to_class('_meta', Options(meta, app_label))
    File "d:\python38\lib\site-packages\django\db\models\base.py", line 325, in add_to_class
    value.contribute_to_class(cls, name)
    File "d:\python38\lib\site-packages\django\db\models\options.py", line 208, in contribute_to_class
    self.db_table = truncate_name(self.db_table, connection.ops.max_name_length())
    File "d:\python38\lib\site-packages\django\db\__init__.py", line 28, in __getattr__
    return getattr(connections[DEFAULT_DB_ALIAS], item)
    File "d:\python38\lib\site-packages\django\db\utils.py", line 207, in __getitem__
    backend = load_backend(db['ENGINE'])
    File "d:\python38\lib\site-packages\django\db\utils.py", line 122, in load_backend
    raise ImproperlyConfigured(
    django.core.exceptions.ImproperlyConfigured: 'ibm_db_django' isn't an available database backend.
    Try using 'django.db.backends.XXX', where XXX is one of:
    'mysql', 'oracle', 'postgresql', 'sqlite3'

    ------------------------------
    David Adler
    ------------------------------



  • 7.  RE: ibm_db driver for Python 3.8 (Windows)

    Posted Wed July 01, 2020 05:20 AM
    Hi David,

    I also installed latest ibm_db driver. Working ok with Python 3.8.

    https://github.com/ibmdb/python-ibmdb

    Regards,
    Gagan

    ------------------------------
    Gagan Kakkar
    ------------------------------



  • 8.  RE: ibm_db driver for Python 3.8 (Windows)

    Posted Wed July 01, 2020 06:54 AM
    The ibm_db driver works on Python 3.8 but not the ibm_db_django driver for Django applications.

    ------------------------------
    David Adler
    ------------------------------