MICUU
心情
所有
图集
登录
搜索
原创
Python将excel数据生成SQL
花陌黎
发布于:2021-10-18
经常会接到开发或运营需要将一些excel表的数据导入到数据库,所以就写了这个脚本。 使用条件: 1.数据要在顶格开始 2.第一行是列名(英文) 3.最好每个单元格都有值,不要有空值 ``` import xlrd # pip3 install xlrd==1.2.0 class ExcelToSql(): def __init__(self,file_name,sheet_name,table_name): self.file_name = file_name self.sheet_name = sheet_name self.table_name = table_name self.excel_title = None self.excel_data = [] def read_excel(self): # 打开excel文件 work_book = xlrd.open_workbook(self.file_name) # 读取sheet文件 content = work_book.sheet_by_name(self.sheet_name) # 读取第一行数据 self.excel_title = content.row_values(0) for row in range(content.nrows-1): # 从第二行开始读数据 self.excel_data.append(list(str(val) for val in content.row_values(row+1))) def to_sql(self): sql1 = "INSERT INTO `%s`(`%s`)"%(self.table_name,"`,`".join(self.excel_title)) for row in self.excel_data: print(sql1 + " VALUES ('%s');"%("','".join(row))) def run(self): self.read_excel() self.to_sql() excel_file_name="test.xlsx" #excel文件名 excel_sheet_name = "Sheet1" #excel工作薄名,注意大小写 sql_table_name ="test" #SQL的表名 ExcelToSql(excel_file_name,excel_sheet_name,sql_table_name).run() ``` [](https://micuu.com/data/avatar/20211018/2c234928f35832439afba54676ceaa9e.png) 运行结果如下: ``` INSERT INTO `test`(`col1`,`col2`,`col3`) VALUES ('aa','1.0','4.0'); INSERT INTO `test`(`col1`,`col2`,`col3`) VALUES ('bb','2.0','5.0'); INSERT INTO `test`(`col1`,`col2`,`col3`) VALUES ('cc','3.0','6.0'); ```
注:原创不易,转载请注明出处(
https://micuu.com/new/2250.html
),本站所有资源来源于网络收集,如有侵权请联系QQ245557979进行清除。
最后修改与 2022-02-21
上一篇:
陕西新增6例本土确诊病例 新增1例本土无症状感染者 新增1例境外输入确诊病例
下一篇:
thinkphp数据库迁移
留言反馈
请先登录
问题反馈渠道,如有软件无法下载或者其他问题可反馈。【由于某种原因,目前留言不展示】
用户需要登录后才能留言反馈
立即留言
珍藏视频
10分钟高效燃脂
30天高效瘦脸操
5分钟缓解颈椎操
友人
微博
全民K歌
唱吧
今日头条
悠悠网
科技小锅盖
彼岸桌面
阮一峰
laravel社区
V2ex
掘金
更多>