sorry, aber aus der Dokumentation rund um Doctrine werde ich nicht schlau.
Ich möchte "einfach" einen RAW Query an Doctrine übergeben, genauer
"SET NAMES utf8 COLLATE utf8_general_ci"
Das war einfach. Jedoch alle Beispiele, die ich entweder in der
Dokumentation oder im Netz fand, funktionierten nicht.
Im Prinzip will ich das nur nach der Initialisierung:
> $manager = Doctrine_Manager::getInstance();
> $manager->openConnection(DSN, 'doctrine');
> $manager->setCharset('utf8');
> $manager->setCollate('utf8_general_ci');
> $manager->setAttribute('model_loading', 'conservative');
Wer kann mir helfen?
Danke und Gruß
André
Doctrine setzt auf PDO auf.
Also könnte bei dir folgendes klappen:
...
$manager = Doctrine_Manager::getInstance();
$manager->openConnection(DSN, 'doctrine');
$manager->setCharset('utf8');
$manager->setCollate('utf8_general_ci');
$manager->setAttribute('model_loading', 'conservative');
...
jetzt mit PDO weiter:
$con = $manager->connection();
$stmt = $con->execute("SET NAMES utf8 COLLATE utf8_general_ci");
evtl. noch:
print_r($con->errorInfo());
um zu sehen ob es geklappt hat. Das Dumme (oder auch Gute) bei PDO ist, das
jede Connection isoliert ist. D.h. du musst das für jede Instance der Doctrin
machen. Ich verstehe nur nicht warum das setCharset('utf8') nicht geht.
Sam
--
Sufficiently advanced incompetence is indistinguishable from malice
(J. Porter Clark)
Sam Kang wrote:
> $con = $manager->connection();
> $stmt = $con->execute("SET NAMES utf8 COLLATE utf8_general_ci");
Ja, vielen Dank! Das war es. Jetzt gibt es erstmal keine Probleme.
Gruß
Andre