Home > front end >  Django, using oracledb error msg that I need Oracle 19
Django, using oracledb error msg that I need Oracle 19

Time:02-04

I am confused since the documentation for oracledb clearly states that everything past 12.1 should work fine. Could someone please explain to me where I went wrong? The error was created when I tried to create migrations. The document I am referencing is: oracledb docs

Here is the error:

django.db.utils.NotSupportedError: Oracle 19 or later is required (found 12.2.0.1.0).

And here is my databases string in my settings.py:

from pathlib import Path
import sys
import oracledb
oracledb.version = "8.3.0"
sys.modules["cx_Oracle"] = oracledb
#the above line was added because of error (django.core.exceptions.ImproperlyConfigured: Error 
#loading cx_Oracle module: No module named 'cx_Oracle')

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.oracle',
        'NAME': (
                    '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=server123)(PORT=1521))'
                    '(CONNECT_DATA=(SERVICE_NAME=server.domain.com)))'
                ),
        'USER': 'user123',
        'PASSWORD': 'password',
        'OPTIONS': {
            'threaded': True,
            
        },
    }
}

CodePudding user response:

It's a Django thing. From docs.djangoproject.com/en/4.1/ref/databases/#oracle-notes:

"Django supports Oracle Database Server versions 19c and higher."

Also see the Django 4.0 release notes

"Dropped support for Oracle 12.2 and 18c". Try an older version of Django if you can't upgrade the DB.

Try an older version of Django if you can't upgrade the DB

  • Related