sql >> Databasteknik >  >> RDS >> Mysql

Är mysql_real_escape_string() trasig?

Från MySQL:s C API-funktion mysql_real_escape_string beskrivning :

Om du behöver ändra teckenuppsättningen för anslutningen bör du använda mysql_set_character_set() funktion istället för att köra en SET NAMES (eller SET CHARACTER SET ) påstående. mysql_set_character_set() fungerar som SET NAMES men påverkar också teckenuppsättningen som används av mysql_real_escape_string() , som SET NAMES inte.

Så använd inte SET NAMES /SET TECKENSET men PHP:s mysql_set_charset för att ändra kodningen eftersom det är motsvarigheten till MySQL:s mysql_set_character_set (se källkoden för / ext/mysql/php_mysql.c ).



  1. MySQL COUNT() – Få antalet rader som ska returneras av en fråga

  2. SQL:Upprepa en resultatrad flera gånger och numrera raderna

  3. Hur man tolkar JSON i postgresql

  4. Integrera MySQL med Python i Windows