我有一个程序,可以从excel文件中读取数据,然后将其加载到数据库中。数据库版本Oracle 11.2g。
如果我使用下面的代码来解析excel中的值-
sku = int(worksheet.cell(r, 0).value)
color = int(worksheet.cell(r, 1).value)
我正在例外
File "uda_upload_automator.py", line 125, in perform_database_operations
cursor.executemany(statement, row)
TypeError: expecting string or bytes object
当我将其更改为
sku = str(worksheet.cell(r, 0).value).strip()
val = str(worksheet.cell(r, 1).value).strip()
它已加载到数据库中,但样式号和颜色代码为
210374245.0 3985.0
210377506.0 3985.0
但是我不需要尾随零。 我用来插入数据库的代码。
cursor.setinputsizes(25, 3, 5, 3, 2)
statement = """INSERT INTO {0}.uda_upload_stage VALUES (:1,:2,:3,:4,:5)""".format(usr)
cursor.executemany(statement, row)