繁体   English   中英

使用Python从Excel文件将当前范围的单元格导入MySql

[英]Import from excel file a current range of cells to MySql using Python

我的项目涉及
1)从Excel文件导入数据

path="...\dataexample.xls"
databook=xlrd.open_workbook(path)
mydatasheet=databook.sheet_by_index(0)

2)连接到本地主机数据库

database = MySQLdb.connect (host=myhost, user = myuser, passwd = mypasswd, db = dbname)

3)将当前单元格范围导入数据库My dataexample.xls有12行和122列,对于我的INSERT QUERY,我只需要A3:J12单元格经过一番搜索,我的意思是:

  • 准备查询和

    cursor = database.cursor() query = """INSERT INTO agiosathanasios(record,Stn_Code,Raw_Dist,Snow,Snow_corr,Smp,Raw_Dist_QC,Snow_final,Snow_final_pos) VALUES (%s,%s,%s,%s,%s,%s,%s,%s,%s)"""

  • 收集正确的查询单元格

     for row in range(3,12): values=[] for col in range(0,10): values.append(mydatasheet.cell(row,col).value) print values 

我试图把values.append追加以下代码database, cursor.execute(query,values)以便我可以导入所需的值。

但是...确实有效...

我怎样才能解决这个问题? 如何将当前值放入查询?

因此,根据回溯,您无法为查询提供所有参数,或者将值转换为字符串时存在一些问题(值无)。 在调用cursor.execute之前检查值!

尝试从excel转换为字符串值:

values.append(str(mydatasheet.cell(row,col).value))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM