-1

好吧,我会解释我在做什么。

我需要验证具有受限数据的文件,这些文件包含超过 100k 行,每行有 120 个字段,每个字段根据定义的格式有自己的验证,例如“COD234-ES”等其他不同的格式,

我需要将此数据从 SQL SERVER 2008 中的数据库插入到表中,但在插入此数据之前必须验证。

该文件必须通过在 PHP 框架中制作的 Web 界面从客户端上传。

我在性能和效率方面的问题是,这样做的最佳做法是什么?

首先在客户端验证然后上传,首先上传到服务器然后使用 PHP 验证或上传批量插入到数据库中,然后使用 transact -sql 验证?

通过许多验证,我认为使用 REGEX 表达式,但在 SQL 中是 l

我很感激谁能指导我以最好的方式做到这一点。非常感谢

4

3 回答 3

1

您希望尽早进行验证。

如果您可以在客户端上验证,请始终这样做,因为它将节省客户端网络带宽以及服务器负载。您可能拥有比服务器更多的客户端。

如果您可以在 PHP 中进行验证,那将比数据库更好,因为通常更容易将负载分散到多个 Web 服务器并保留一个数据库,而不是将数据库分片到多个服务器上。

于 2013-04-26T22:08:57.387 回答
1

简单的答案是,您必须在客户端和服务器上都进行验证。
在客户端,因为上传太多数据对用户太不友好,所以会收到错误消息。

但是,您需要在服务器上重新验证,因为一个邪恶的人(或自动上传界面)可以绕过您的客户端测试,并故意或愚蠢地引入垃圾或恶意数据。

于 2013-04-26T22:11:34.397 回答
0

同意 rjmunro 和 Quandary,在客户端和服务器端验证您的数据。使用 transact-sql 重新验证(或仅在测试阶段)不是很有用,但您可以在创建表时进行约束检查。

于 2013-04-26T23:01:05.443 回答