Vous n'êtes pas identifié(e).
Pages : 1
Si le fichier est en UTF-8, il faut tout d'abord configurer le client_encoding à UTF-8 puis intégrer les données. Dans votre cas, soit vous modifiez le fichier person.sql en ajoutnat en première ligne "SET client_encoding TO UTF8;", soit vous entrez dans psql et vous lancez les deux commandes :
SET client_encoding to UTF8; \i person.sql
(Ça va recréer la table, donc il faut l'avoir supprimé auparavant.)
exactement !
set client_encoding to UTF8;
et aussi changer le chcp du terminal :
- soit depuis le terminal avec
powershell /c chcp 65001
ou depuis le cmd
cmd /c chcp 65001
-ou depuis dans psql :
\! chcp 65001
ensuite pour pas avoir à le faire à chaque fois j'ai fait cette manip' (hésitez pas à me dire si c'est déconseillé, mais pour le moment ça fonctionne nickel) :
Si jamais ça peut servir à d'autre
c'est bien en UTF-8
Je crois que notepad++ l'indique mais je n'en sais guère plus que ça. Mes connaissances sont Windows ne sont plus ce qu'elles étaient.
C'est ce que me disent tous les gens qui me file un p'tit coup d'pouce ^^ j'crois que j'vais bientôt tenter Linux en dualboot
Merci quand même pour l'aide ! si jamais je trouve la solution j'la poserait ici !
Belle journée à tt le monde !
en tapant la commande 'show client_encoding' ça me renvoie WIN1252
et je sais pas trop comment récupérer le format d'encodage du fichier .sql
Bonjour,
Je débute avec psql sous win10 et après avoir cherché un peu partout je me tourne vers vous, voilà mon soucis :
- j'ai récupéré un fichier person.sql généré par le site https://mockaroo.com/ (générateur de data test)
(le contenu de ce fichier person.sql)
create table person (
first_name VARCHAR(50),
last_name VARCHAR(50),
email VARCHAR(50),
gender VARCHAR(50),
date_of_birth DATE,
country_of_birth VARCHAR(50)
);
insert into person (first_name, last_name, email, gender, date_of_birth, country_of_birth) values ('Ténner', 'Mumbeson', 'tmumbeson0@usda.gov', 'Genderqueer', '22/12/2020', 'Philippines');
insert into person (first_name, last_name, email, gender, date_of_birth, country_of_birth) values ('Elvéra', 'Durrett', 'edurrettrr@diigo.com', 'Agender', '05/07/2020', 'Philippines');
- puis j'ai créé une database "test"
- puis j'ai importé le .sql avec la commande :
psql -U postgres -d test -f person.sql
(tout est ok jusque là)
- et enfin quand je me connecte à la DB et que j'exécute
SELECT * FROM "person";
- les accents des prénoms ne s'affichent pas correctement :
- alors que quand j'ajoute les lignes moi-même à la main en étant connecté à la DB "test" avec la commande
INSERT INTO "person" ("first_name", "last_name", "email", "gender", "date_of_birth", "country_of_birth") values ('Ténner', 'Mumbeson', 'tmumbeson0@usda.gov', 'Genderqueer', '22/12/2020', 'Philippines');
- et que je refais la commande SELECT, les accents sont correctement affichés
Si quelqu'un sait comment résoudre le problème ?
Pages : 1