LoginSignup
3
1

More than 3 years have passed since last update.

【PHP】【MySQL】値をパラメータにバインドする時は名前付けされたプレースホルダよりも疑問符プレースホルダを用いた方が良いのか?

Posted at

検索しやすいので名前付けプレースホルダを使ってSQLを書いていたのですが、「サポートしてないから疑問符プレースホルダを使ってほしい」と指摘が入りました。
…が、別に名前付けプレースホルダでも想定通りの結果が得られています。順序を変えても問題ありません。
今更、秀丸エディタで', 'を', :'で全置換して書いたSQLをすべて疑問符に書き換えるのは面倒臭くてそのままにしていたのですが、なぜこの指摘が入ったのか気になったので調べてみました。

結論

MySQLのバージョンが5.6系だから

教えて!Google先生

「php mysql bind 疑問符」でググったトップに出てくるteratailの回答がアンサーでした。

MySQL - SQLで名前つきでない疑問符プレースホルダがよく使われるのはなぜでしょうか?|teratail
MySQL :: MySQL 5.6 リファレンスマニュアル :: 13.5.1 PREPARE 構文

想定通りの結果を得られているけど、疑問符プレースホルダに書き換えるべきなのか…。

3
1
6

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1