почему я получаю эту ошибку, когда у меня есть точная структура таблицы в базе данных? - PullRequest
0 голосов
/ 28 октября 2019

Я пытаюсь вставить данные в базу данных

con = cx_Oracle.connect('---------')
cur = con.cursor()

var1=3
var2=4

cur.execute('''
                insert into some_table (E,ECA_ID,E3,E4,E5,ARD_,ARD_N,ARD_NA,CARD_N,NAME,RANKNUM) 
                VALUES
                (1,%d,%s,4,5,'1','w','d','g', 'f',1)
                ''',(var1,var2))
con.commit()

, и это дает мне ошибку

DatabaseError: ORA-01036: недопустимое имя / номер переменной

поэтому, когда я попробовал это с кодом

con = cx_Oracle.connect('---------')
cur = con.cursor()

cur.execute('''
                insert into some_table (E,ECA_ID,E3,E4,E5,ARD_,ARD_N,ARD_NA,CARD_N,NAME,RANKNUM) 
                VALUES
                (1,1,3,4,5,'1','w','d','a', 'b',1)
                ''')
con.commit()

, это работает, так в чем же проблема?

Я работаю в ноутбуке Jupyter, выиграй 10

1 Ответ

0 голосов
/ 28 октября 2019

Я никогда не использую оракула, но я думаю, что вы можете использовать% d,% s до «% d», «% s».

Когда вы используете «%» в строке (вjava, например) означает шаблон для форматирования вывода.

Или, может быть, здесь DatabaseError: ORA-01036: недопустимая переменная имя / номер есть решение проблемы, очень похожее.

С уважением, Джулиано.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...