У меня проблема с использованием экземпляра класса в Python.Я создал новый класс ora, который наследует класс connect из пакета cx_Oracle.Когда я пытаюсь запустить этот код, я получаю информацию
Файл "pyt.py", строка 12, в myquery ora.myConnect.cursor () AttributeError: У объекта 'NoneType' нет атрибута 'cursor'
Итак, Python не может распознать, что в ora.myConnect хранится ссылка на экземпляр.Я не t know what can be reason of this error and what it
s неправильно с кодом.
from cx_Oracle import connect
class ora(connect):
myConnect = None
def __init__(self,connstr):
ora.myConnect = connect.__init__(self,connstr)
def myquery(self):
ora.myConnect.cursor()
ora.myConnect.cursor.execute("SELECT * FROM table")
ora.myConnect.cursor.close()
connstr = 'user/passwd@host:port/sid'
connection = ora(connstr)
connection.myquery()
connection.close()
РЕДАКТИРОВАТЬ
У меня ve tried to replace ora to self but still Python don
нет доступа к экземпляру
from cx_Oracle import connect
class ora(connect):
myConnect = None
def __init__(self,connstr):
self.myConnect = connect.__init__(self,connstr)
def myquery(self):
self.myConnect.cursor()
self.myConnect.cursor.execute("SELECT * FROM table")
self.myConnect.cursor.close()
Ошибка: self.myConnect.cursor () AttributeError: объект 'NoneType' не имеет атрибута 'cursor'
EDIT2 Этот код работает без ООП, для меня self.myConnect должен указывать ссылку на экземпляр объекта, и этот объект должен содержать метод cursor ()
import cx_oracle
connstr = 'user/passwd@host:port/sid'
connection = cx_oracle.connect(connstr)
cursor = connection.cursor()
cursor.execute("SELECT * FROM table")
cursor.close()
connection.close()