sql >> Databasteknik >  >> RDS >> Mysql

Php/ODBC-kodningsproblem

Först har du kodningen av DB. Då har du kodningen som används av ODBC-klienten.

Om kodningen av din ODBC-klientanslutning inte stämmer överens med den i DB, kommer ODBC-lagret automatiskt att koda om dina data, i vissa fall.

Tricket här är att tvinga fram kodningen av ODBC-klientanslutningen.

För en "all UTF-8"-inställning:

$conn=odbc_connect(DB_DSN,DB_USR,DB_PWD);
odbc_exec($conn, "SET NAMES 'UTF8'");
odbc_exec($conn, "SET client_encoding='UTF-8'");

// processing here

Detta fungerar perfekt med PostgreSQL + Php 5.x. Den exakta syntax och alternativ beror på DB-leverantören.

Du kan hitta mycket användbar och tydlig ytterligare information för MySql här: http://dev.mysql.com/doc/refman/5.0/fr/charset-connection.html

hoppas detta hjälper.



  1. 4 sätt att kontrollera om en tabell finns innan du släpper den i SQL Server (T-SQL)

  2. Hibernate Kryptering av databasen helt transparent för applikation

  3. Migrera MySQL till PostgreSQL på AWS RDS, del 1

  4. Kan du lösa denna enkla SQL-fråga?