当 select 准备语句中的所有行时真的需要问号吗?
Is question mark really need when select all row in prepared statement?
我想知道如果我不想指定任何行,是否还需要问号。因为bind_param
需要它。
$zr="0";
$stmt=$mysqli->prepare("select * from products_db where not prd_id=?");
$stmt->bind_param("i",$zr);//can I skip this line or what?
我到处找都没有。一旦我在没有 ?
的情况下尝试,它就会无缘无故地出错。我可能是打字错误,什么?
如果不需要绑定任何参数,可以使用mysqli::query()
$result = $mysqli->query('SELECT * FROM products_db');
这会准备和执行所提供的 SQL,但无法提供安全绑定参数的方法。
这大致相当于...
$stmt = $mysqli->prepare('SELECT * FROM products_db');
$result = $stmt->execute();
你也可以使用。
请注意,没有位置参数(即 ?
),因此无需使用 mysqli_stmt::bind_param()
。
我想知道如果我不想指定任何行,是否还需要问号。因为bind_param
需要它。
$zr="0";
$stmt=$mysqli->prepare("select * from products_db where not prd_id=?");
$stmt->bind_param("i",$zr);//can I skip this line or what?
我到处找都没有。一旦我在没有 ?
的情况下尝试,它就会无缘无故地出错。我可能是打字错误,什么?
如果不需要绑定任何参数,可以使用mysqli::query()
$result = $mysqli->query('SELECT * FROM products_db');
这会准备和执行所提供的 SQL,但无法提供安全绑定参数的方法。
这大致相当于...
$stmt = $mysqli->prepare('SELECT * FROM products_db');
$result = $stmt->execute();
你也可以使用。
请注意,没有位置参数(即 ?
),因此无需使用 mysqli_stmt::bind_param()
。