Essayer d'insérer des valeurs avec des caractères Unicode dans une base de données MySQL en utilisant Delphi 2010 et TADOConnection sans succès.Insérer des caractères Unicode dans MySQL avec Delphi 2010
Connexion avec ODBC
Provider=MSDASQL.1;Persist Security Info=False;Data Source=mysrc;Initial Catalog=mydb
La commande SQL:
INSERT INTO myTable (aCol) VALUES('Russian: русский язык')
Essayé insérer directement avec
TADOConnection.Execute(SQL)
Il ne se termine que dans la base de données « russe: ?? ????? ???? "
également essayé la méthode proposée ici: http://www.3delite.hu/Object%20Pascal%20Developer%20Resources/delphiunicodemysqltutorial.html
With TADOQuery do
begin
SQL.Clear;
SQL.Add('INSERT INTO myTable (aCol) VALUES(:p));
Parameters.ParamByName('p').DataType := ftWideString;
Parameters.ParamByName('p').Value := 'Russian: русский язык';
ExecSQL;
end;
Faire cela dans le code ne fonctionne pas du tout pour moi, que si j'ajouter des paramètres dans designtime, mais il est toujours le même résultat dans la base de données avec des questions partout.
Quel type d'Unicode est-ce? UTF-16? Quel est le codage dans la table cible? –
Je ne suis pas sûr puisque je ne suis pas celui qui a mis en place la base de données. Comment puis-je vérifier? Mais je sais qu'il peut stocker des caractères russes parce que j'ai un script PHP qui peut le faire sans problème – Bulan