我不确定这是一个很好的“SO”风格问题,但不知道还能问哪里。
我正在开发一个小项目,并且正在使用一定量的预先确定的数据设置数据库。
这些数据需要一定量的“预处理”才能将数据放入数据库并使数据库处于合理的状态(试图达到第三范式)。
TLDR:我可以使用哪些参数将所有这些保留在纯 SQL 中,而不是使用 PHP 附带的附加功能。
完整信息:
有一件事困扰着我,我可以用直接 SQL 来完成这项工作(我们在本例中使用 MySQL),并且我开发了许多相当不错的小脚本来提取、排序和清理内容向上。这得到了同事们的高度认可。
我自己想知道,但是在某些方面我是否会更好地通过 php 运行一些清理工作,因为它会使代码不那么“冗长”~可以很容易地滑入例如在 php 中循环。
我可以想到为什么将设置保留在纯 SQL 中会更好的多种原因。例如,允许数据库移动到另一台机器并做好准备,而另一台机器不需要有 php 解释器,或者需要连接到有 php 解释器的系统。
但是我正在努力想出任何其他好的论据,我确信这个问题将会出现,并且希望在出现时准备好致命的论据。
感谢您的意见。
大卫
最佳答案
如果不知道项目的细节、以后可能会参与该项目的人以及他们的技能是什么,就很难说。需要记住的一件事是您将来可能会更改数据库。如果是这样,那么我会用 PHP 编写所有内容,并让框架处理将其转换为适合您数据库的 SQL。
如果编程语言更可能发生变化,那么就坚持使用 SQL 脚本。如果您要使用持续集成引擎运行脚本,那么 SQL 还是 PHP 哪个更容易实现?
如果您需要对 SQL 脚本进行某种版本控制,那么在 PHP 中可能比直接使用 SQL 更容易完成,但我从未尝试过后者。
关于php - 用于数据库设置脚本的 SQL 或 sql/PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33596823/