我正在开发一个web应用程序,用户可以在其中上载excel文件。我知道我可以使用OPENROWSET
函数将excel中的数据读取到SQL Server中,但我不这么做,因为该函数需要文件路径
这似乎有点间接,因为我正在将一个文件上载到一个目录,然后告诉SQL Server在该目录中查找该文件,而不是仅仅将该文件提供给SQL Server
另一种选择是将Excel文件读入pandas数据框,然后使用to_sql
函数,但是pandasread_excel
函数非常慢,我相信另一种方法会更快
在处理从web应用程序上载的文件时,这两种方法中哪一种是“正确的”
如果第一种方法不被反对或“不正确”,那么我几乎可以肯定它会更快,并且会使用它。我只是想要一个有经验的开发者的想法或意见。webapp的后端是Python和flask
如果我正确理解了您的问题,那么您正在尝试将
xls(s)
文件的内容加载到SQLServer数据库中。这实际上不是一件小事,因为根据Excel文件中的内容,您可能希望有一个表,或者更可能是基于数据的多个表。所以我想退一步问三个问题:POST
表单并将文件数据发送到服务器和服务器以保存该文件(例如,在S3上,或在/tmp文件夹中,或在内存中进行临时处理)李>xls(x)
及其位置)以及需要如何保存数据(文件sql schema
),现在是时候决定该作业的最佳工具了。Pandas可能不会是一个好工具,除非您确实只想加载文件并将其转储,只需对单个表进行最小(如果有)更改。在这一点上,我建议使用类似于xlrd
的东西,如果只有xls
文件,或者openpyxl
用于xls
和xlsx
文件。通过这种方式,您可以按照自己的意愿塑造数据。例如,如果用户输入的日期格式不正确;空单元格(是否默认为某个内容?);不匹配的类型等换句话说,您描述的任务一点也不琐碎。这将需要相当多的规划和设计,一旦确定了设计,还需要相当多的python代码。如果需要的话,可以在这里问更多的问题,以获得更具体的问题(例如,如何在文件更新中捕获
POST
数据或任何需要帮助的内容)相关问题 更多 >
编程相关推荐