Mysql
 sql >> база данни >  >> RDS >> Mysql

PDO еквивалент на mysql_client_encoding()?

Има два различни набора от символи, които се разглеждат:

  • кодирането, в което MySQL приема, че низовете се изпращат от клиента (character_set_client ); и
  • кодирането, в което MySQL ще изпраща своите отговори ( character_set_results ).

За да установите текущата стойност на тези променливи с помощта на PDO, можете да извлечете резултатите от съответния SHOW VARIABLES изявление; например:

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

Документацията за mysql_client_encoding() е малко двусмислено, както се казва:

Въпреки това, такава сървърна системна променлива не съществува:така че не съм сигурен коя би върнала.

И накрая, вместо да задавате MYSQL_ATTR_INIT_COMMAND , можете да посочите желания набор от знаци в DSN (както е споменато в ръководството ):

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Променете данните на една клетка в mysql

  2. PDO::PARAM за тип десетичен?

  3. Как умишлено да създадете продължителна MySQL заявка

  4. PDO еквивалент на mysql_num_rows или mssql_num_rows

  5. Как да импортирам огромен CSV файл с 200,00 реда в MySQL (асинхронно и бързо)?