sql >> Database >  >> RDS >> Mysql

PDO-equivalent van mysql_client_encoding()?

Er zijn twee verschillende tekensets in het geding:

Om de huidige waarde van deze variabelen vast te stellen met behulp van PDO, kunt u de resultaten ophalen van de relevante SHOW VARIABLES uitspraak; bijvoorbeeld:

$qry = $db->query("SHOW VARIABLES LIKE 'character_set_client'");

De documentatie voor mysql_client_encoding() is enigszins dubbelzinnig, zoals het stelt:

Een dergelijke serversysteemvariabele bestaat echter niet:dus ik weet niet zeker welke deze zou retourneren.

Ten slotte, in plaats van een MYSQL_ATTR_INIT_COMMAND , kunt u uw gewenste tekenset specificeren in de DSN (zoals vermeld in de handleiding ):

$db = new PDO("mysql:dbname=$db;host=$host;charset=$charset", $user, $password);



  1. Kan MySQL.DateTime niet converteren naar System.DateTime met 0000-00-00 00:00:00 waarden

  2. Oracle PL/SQL:controleren of BLOB of CLOB leeg is

  3. Hoe u uw MySQL- of MariaDB-database zeer beschikbaar maakt op AWS en Google Cloud

  4. Onjuiste syntaxis bij ''