为什么php的pdo不直接使用sql语句查询?
1个回答
展开全部
其实不是全部这样的,你也可以直接query。prepare后其实并没有向数据库提交任何请求,也就是说sql语句还没有执行,只是“准备”好了一个SQL语句,你需要调用execute方法,才真正的执行。而query等于prepare+execute方法。之所以用prepare我理解有2个优点,一是你不用考虑过滤参数内容,prepare自动给你过滤或转义要插入数据库的数据,这可以防止sql注入;二是prepare可以传递参数,举个例子:
$obj = new PDO();
$data = $obj-query("SELECT * FROM `article` WHERE `id` = 1");
"); //这个问号就代表一个参数,这个参数是可以修改
$obj = new PDO();
$data = $obj-query("SELECT * FROM `article` WHERE `id` = 1");
"); //这个问号就代表一个参数,这个参数是可以修改
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询