PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 Re : Général » Modification de la valeur d'un champ date » 19/05/2009 08:43:58

Bon désolé du dérangement... suis trop nul... effectivement, j'avais oulbié les guillemets à l'id. Des gifles que je me serais donné ! smile

#2 Général » Modification de la valeur d'un champ date » 18/05/2009 16:20:01

naunau
Réponses : 2

Bonjour,

Je rencontre un petit souci avec une base Postgres 8.3.1 et je ne trouve pas la bonne syntaxe.

J'ai un champ date avec une valeur, par exemple : 2009-05-18

Je dois modifier cette date donc j'ai passé cette requète :
update mapas set madate = '2009-05-26' where id=200;

Là il me met une l'erreur suivante :
ERROR:  operator does not exist: character varying = integer
LINE 1: ...mapas set madate = '2009-05-26' where id=200;
                                                              ^
HINT:  No operator matches the given name and argument type(s). You might need to add explicit type casts.


J'ai donc tenté de caster la date en passant cette requète :
update mapas set madate = CAST ('2009-05-26' AS DATE) where id=200;

Mais j'ai toujours une erreur. Quelqu'un aurait-il la bonne syntaxe svp ? smile

Merci beaucoup et bonne fin de journée.

Arnaud

#3 Re : Général » Parse error lors d'un alter sequence » 03/04/2009 11:38:36

Désolé pour la vétusté de la version... J'aimerais bien passer en 8.3 mais je rencontre un gros problème d'encodage (voir mes autres messages) pour lequel même gleu n'a plus d'idée. C'est pour dire ! smile

#4 Re : Général » Parse error lors d'un alter sequence » 03/04/2009 11:27:12

Nickel le setval ! Il manquait juste les guillements sur le nom de la séquence.
Merci infiniment.

#5 Général » Parse error lors d'un alter sequence » 03/04/2009 11:11:16

naunau
Réponses : 6

Bonjour,

Quand j'éxécute ceci : ALTER SEQUENCE docs_id_doc_seq RESTART WITH 288;
Je reçois la réponse suivante : ERROR:  parser: parse error at or near "sequence"

Je vois pas du tout où je peux avoir fait une erreur là. Mais je ne vous ai pas tout dit ! La base sur laquelle je tente vainement d'exécuter ce code si complexe a la version 7.2.

En espérant que le numéro de version ne sera pas bloquant pour ma requête, je vous remercie d'avance et vous souhaite une bonne journée.

#6 Re : Général » Problème d'encodage » 02/03/2009 11:13:35

Bonjour,

Je reviens à la charge pour poser ma question sous un autre angle...

Avec tous les éléments que vous avez sur les posts précédents, expliquez-moi comment je peux faire pour créer une base encodée en sql_ascii ou en latin1 ? Je rappelle que sur mon Ubuntu (version 8.04), je ne peux créer que des bases encodées en utf-8. En fait, je suis eprsuadé que si j'arrive à créer cette base sous le bon encodage, mon problème sera résolu. Mais, comme mentioné plus haut, quand je souhaite la créer en sql_ascii (par exemple), il me  met un message d'erreur du type :
ERREUR : L'encodage sql_ascii ne correspond pas à la locale fr_FR.UTF-8 du serveur
DETAIL : Le paramètre LC_CTYPE du serveur nécessite l'encodage UTF8

Bref, ne parlons plus de mes caractères accentués, parlons juste des raisons qui peuvent faire que Postgres ne peut pas créer de base encodée différemment qu'en utf-8.

Et je croise les doigts... smile

Arnaud

#7 Re : Général » Problème d'encodage » 27/02/2009 16:56:58

J'avais aussi vu ce chapitre dans la doc de Postgres. N'étant pas très au fait des bases de données, j'ai espéré que malgré mes heures de recherche j'étais passé à côté de LA solution. Manifestement c'est pas le cas et c'est bien dommage pour moi. Suis un 'tit peu dans la mouise quoi... smile

Merci en tout cas d'avoir pris la peine de répondre. Si j'arrive à trouver une solution acceptable, je ne manquerais pas de venir la poster ici.

Arnaud

#9 Re : Général » Problème d'encodage » 27/02/2009 10:46:58

Bonjour,

J'ignorais que j'essayais d'exécuter du commentaire. Merci de l'info. smile

Mais j'ai toujours un problème en exécutant la ligne :
CREATE DATABASE test ENCODING 'sql_ascii' (sql_ascii entre guillemets sinon il me met une erreur de syntaxe)

Voici le message qui s'affiche après exécution :
ERREUR : L'encodage sql_ascii ne correspond pas à la locale fr_FR.UTF-8 du serveur
DETAIL : Le paramètre LC_CTYPE du serveur nécessite l'encodage UTF8

En fait, je ne souhaite pas changer les locales du serveur (de toute façon j'ai pas réussi à le faire lol) car il y aura d'autres applications et d'autres bases dont l'encodage sera moins exotique que sql_ascii. Ce que je souhaite juste, c'est créer cette base seulement en sql_ascii.

Est-ce possible ? Et si oui quelle est l'astuce pour y parvenir ?
Merci...

Arnaud

#10 Général » Problème d'encodage » 26/02/2009 16:01:51

naunau
Réponses : 20

Bonjour,

J'ai une base de données encodée en sql_ascii. Oui je sais c'est pas le mieux mais j'ai pas choisi... smile

J'ai installé Ubuntu sur un poste de test et je souhaite maintenant restaurer ma base. Or, Ubuntu étant en utf8 par défaut, j'ai bien sûr un problème avec les caractères accentués. C'est pourquoi j'ai essayé de créer une base encodée en sql_ascii avec la commande :

CREATE DATABASE test --encoding=sql_ascii

Cela me crée bien la base mais quand je fais un \l+, elle est encodée en utf8, ce qui se confirme puisque à la restauration j'ai toujours le problème sur les caractères accentués.

D'après vous, pour quelle raison cette base ne se crée pas en sql_ascii ?

Je vous remercie d'avance...

Arnaud

Pied de page des forums

Propulsé par FluxBB