Я пытаюсь вставить данные csv в oracle таблицу. Но возникает ошибка как TypeError: ожидается объект строки или байтов. Я думаю, что возникает ошибка, потому что некоторые столбцы имеют нулевые значения. Когда я заменяю нулевые значения на 0, я смог вставить (но не смог). Производительность также важна, поскольку я вставляю большие данные (около 20 миллионов строк ), поэтому я не могу работать с "cursor.execute"
Типы данных столбцов в таблице oracle; только xy - дата, остальные - числа.
Типы данных фрейма данных; xx -> int64, xy -> date, xz -> int64, xa -> объект, xb -> объект
os.environ['ORACLE_HOME']="../client"
conn = cx_Oracle.connect('..', '..', '...')
cursor = conn.cursor()
for index, row in df2.iterrows():
csv_df_dataset_lst = df2.values.tolist()
sql="""INSERT oracle_table ( xx,xy,xz,xa,xb)values (:1,:2,:3,:4,:5)"""
cursor.executemany(sql,csv_df_dataset_lst)
conn.commit()```
Kindly guide me if am wrong in the code.