如果声明在mysqli :: prepare中

时间:2014-04-01 13:28:06

标签: php sql mysqli

在mysqli :: prepare语句中插入if语句是否可行?

$check->$DBH->prepare('IF EXISTS(SELECT COUNT(ID) FROM users WHERE username=?)>0');
$check->bind_param('i',$username);
$check->execute();

如果是这样,我的下一个问题是如何处理查询?如果找到,它会返回1,还是受影响的行或结果。

$result=$check->affected_rows;//rows affected

或者

$check->bind_result($rowExists);//row exist

或者

$check->num_rows();//number of rows

或者他是否有可能?

1 个答案:

答案 0 :(得分:0)

准备好的声明仅处理数据

它不会以任何方式影响您的SQL语句。

使用替换为占位符的动态数据文字的任何工作 SQL语句都可以使用

如果您将非法SQL传递到准备好的声明中,它就无法工作。