Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我应该使用php还是sql将数据插入表中_Php_Mysql_Stored Procedures_Insert - Fatal编程技术网

我应该使用php还是sql将数据插入表中

我应该使用php还是sql将数据插入表中,php,mysql,stored-procedures,insert,Php,Mysql,Stored Procedures,Insert,我想知道我应该使用mySql中的过程还是直接从php填充名为Project的表。我有$projectName,$startDate等等。我应该调用mySql过程还是直接使用php 例如: $queryInsert ="INSERT INTO users (name) VALUES('".$projectName."')"; //and so on for the rest of vars 想知道哪种是最好的编码实践方法。 非常感谢存储过程,因

我想知道我应该使用mySql中的过程还是直接从php填充名为Project的表。我有
$projectName
$startDate
等等。我应该调用
mySql过程
还是直接使用php

例如:

        $queryInsert ="INSERT INTO users  (name) 
        VALUES('".$projectName."')";
        //and so on for the rest of vars
想知道哪种是最好的编码实践方法。
非常感谢存储过程,因为此操作是避免
内联查询和从代码编辑的最佳方法

为了更快地执行并防止SQL注入,您应该练习这一点

内联查询的影响:

1) 你知道,内联查询很难编辑

2) can sql注入

3) php和mysql代码真的很拥挤


4) PHP解析器需要在mysql中动态执行完整查询

存储过程的一些好处是:

  • 可维护性:您可以更改过程中的逻辑,而无需 需要编辑app1、app2和app3调用
  • 安全/访问控制:更容易担心谁可以呼叫 预定义的过程比控制谁可以访问哪个 表或哪些表行
  • 性能:如果您的应用程序与您的应用程序不在同一服务器上 而您所做的工作涉及多个查询,使用 该过程通过涉及对的单个调用来减少网络开销 数据库,而不是像查询一样多的调用
  • 性能(2):通常缓存过程的查询计划, 允许您一次又一次地重复使用它,而无需 重新准备

非常感谢,我只是想确定一下。内联查询会产生什么后果?请查看更新的答案。