3

我的系统需要通过 CSV 上传导入大量姓名和电子邮件地址(仅两个字段)。

我可以很容易地处理上传,在处理导入之前如何验证电子邮件地址。

另外,我怎样才能快速处理这个或作为后台进程而不需要用户观看脚本?

使用经典 ASP/SQL Server 2008。

请不要嘲笑经典的 asp。

4

2 回答 2

2

您是否需要通过 ASP 应用程序进行此上传?如果不是,那么无论哪种脚本语言你觉得最舒服,并且可以用最少的编码时间做到这一点,都是完成这项工作的最佳工具。如果您需要用户能够上传到经典的 ASP 应用程序并有一个可靠的过程来将有效记录插入数据库并拒绝无效记录,那么您的选项会改变。

您需要向用户提供反馈吗?就像告诉他们确切的行是无效的?

如果您正在处理第二种情况,我会让 asp 应用程序简单地存储文件,并有另一个进程、.net 服务或计划任务或其他东西,进行导入并在文本中报告其进度asp 应用程序可以检查的文件。这使您可以重新使用您熟悉的任何脚本语言来执行此操作,并且您不必处理 http 请求超时。

如果您搜索“正则表达式有效电子邮件”,您可以找到各种用于识别无效电子邮件地址的正则表达式。

于 2012-12-31T17:49:59.190 回答
0

在以前的生活中,我曾经通过使用DTS将文件拖到工作表中,然后使用批量 SQL 命令处理该文件来执行此类操作。今天,您将使用集成服务

这使您可以非常快速地将数据导入 SQL Server,并防止脚本超时,然后您可以使用您喜欢的任何方法(例如 AJAX 驱动的批处理、重定向驱动的批处理等)来处理谨慎的块数据,或将其安排为作为单个批处理(SQL Server 作业)运行并仅报告结果。

您可能很幸运能够通过上传脚本一次性处理 500K 行,但我不会碰运气。

于 2012-12-31T23:15:46.090 回答