首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL编程范式-客户机与服务器

SQL编程范式-客户机与服务器
EN

Stack Overflow用户
提问于 2012-04-18 15:15:09
回答 2查看 192关注 0票数 0

我正在工作中开发一个MS数据库。我们处于早期开发阶段,当我的一位同事正在使用ASP.NET时,我正在玩PHP。最后,我们可能会联合起来,坚持一个或另一个。因此,我认为在数据库上尽可能多地在存储过程中进行编程是明智的。

因此,我目前正在处理这个位置,用户上传文本文件,重新排列数据,并插入到服务器上的一个表中。现在我基本上有三个选择:

  1. 在PHP中完成所有的重新排列,构建查询字符串并执行它。
  2. 将数据按原样插入到不同的表中,并调用存储过程重新排列数据,并将其插入较大的目标表中。
  3. 只需将数据作为参数传递到一个存储过程中,该存储过程同时执行所有操作和连接。

从我到目前为止所读到的,我知道选项1可能不太好。我的问题是,方案3是不是走得太远了?我有一种感觉,这将是更困难,但它将是最便携的,我不会有额外的桌子与尚未被操纵的数据放在服务器上。或者,选项2是要走的路,因为它可能对任何在我之后试图分析我的代码正在做什么的人来说最有意义吗?

EN

回答 2

Stack Overflow用户

发布于 2012-04-18 15:24:11

我不想让我的存储过程做某种逻辑来处理文件的读取和清理,我会将这个过程分成不同的逻辑层来处理。我希望在我的业务逻辑级别上进行文件操作,并向存储的proc (我的数据访问层)提供干净的数据,这样它就可以将数据保存到相关的表中。通过这种方式,您可以使用相同的数据访问方法,如果您希望从应用程序的不同部分保存数据/尝试保存已经清理过的数据的不同应用程序。我认为这是更可扩展的解决方案。

因此,我建议您在PHP文件中执行文件清理操作,然后将数据传递给存储的proc。确保您没有传递要保存在查询字符串中的数据,并将其直接从查询字符串读取。因为那样的话,您将成为SQL注入的受害者。

票数 1
EN

Stack Overflow用户

发布于 2012-04-19 12:23:18

我建议在两个web部件(可能是SOAP服务,以便PHP和ASP.NET都可以轻松地使用它)之间添加一些中间层来完成所有的处理和数据操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10212449

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档