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 25/04/2013 16:11:31

28marc28
Membre

Problème d'ouverture avec odbc

Bonjour j'ai un soucis d'ouverture de base sous postgre.

Je suis en train de convertir mes données mysql -> postgre.

Je travail sous VB6.

J'ai reussi a  ouvrir la base postsgre.
De la je fais un CREATE DATABASE Collaboratuer;
Je ferme la base postgre

J'essaye d'ouvrir la base Collaborateur(pour faire un CREATE TABLE ) et cela ne fonctionne pas, il ne veux pas l'ouvrir ...

Y' a t'il des droits particulier a donner à la création de la base ?

Version postgre: 9.2
outil de developpement: VB6
ODBC: PostgreSQL ANSI -> psqlodbc_09_01_0100

Avez vous déjà rencontré ce problème ?

Par avance merci.

28marc28

Dernière modification par 28marc28 (25/04/2013 16:12:10)

Hors ligne

#2 25/04/2013 16:24:35

rjuju
Administrateur

Re : Problème d'ouverture avec odbc

Bonjour,

il faut que l'utilisateur soit autorisé dans le pg_hba.conf, et qu'il ait au minimum le droit de CONNECT sur la base. Quel est le message d'erreur exact ? (il y a une coquille vous avez écrit « Collaboratuer » puis « Collaborateur » par exemple).

En ligne

#3 25/04/2013 16:31:22

28marc28
Membre

Re : Problème d'ouverture avec odbc

Merci de votre réponse rapide,

dans le pg_hba.conf:

j'ai rajouté : host    all             all             192.168.3.0/24          md5

si je comprend bien il faut que je rajoute à la suite de cette ligne des options ? pour autoriser.


Pour répondre au deuxième point, oui oui c'est une coquille.

Hors ligne

#4 25/04/2013 16:40:28

28marc28
Membre

Re : Problème d'ouverture avec odbc

Pardon j'ai oublié le message d'erreur, en fait j'ai juste un code d'erreur, le voici : -2147467259

Hors ligne

#5 25/04/2013 16:49:30

rjuju
Administrateur

Re : Problème d'ouverture avec odbc

dans le pg_hba.conf, le 1er «all» correspond à la base de données, elles sont donc toutes autorisées sur le réseau 192.168.3.0/24

Sinon, le code d'erreur doit venir de vb6, postgres donne toujours des messages d'erreurs en toute lettre. Vérifiez si vous pouvez bien vous connecter avec un autre outil comme psql ou pgadmin3.

En ligne

#6 25/04/2013 16:51:27

28marc28
Membre

Re : Problème d'ouverture avec odbc

Oui j'y arrive bien avec pgadmin3.

Hors ligne

#7 25/04/2013 16:53:41

28marc28
Membre

Re : Problème d'ouverture avec odbc

Pour info, j'ai trouvé dans la doc:
Astuce

Pour se connecter à une base particulière, un utilisateur doit non seulement passer les vérifications de pg_hba.conf mais doit également avoir le droit CONNECT sur cette base. Pour contrôler qui peut se connecter à quelles bases, il est en général plus facile de le faire en donnant ou retirant le privilège CONNECT plutôt qu'en plaçant des règles dans le fichier pg_hba.conf.

j'ai donc vérifié dans le pgadmin3 si l'utilisateur avait le droit de connecter et c'est à Oui.

Hors ligne

#8 25/04/2013 16:57:22

rjuju
Administrateur

Re : Problème d'ouverture avec odbc

Si la connexion se fait bien avec pgAdmin, le problème vient certainement de vb6 et/ou de votre lien odbc. Je n'ai pas de windows sous la main, mais il me semble que le nom de la base est à renseigner dans la connexion ? Si c'est le cas, il faut sans doute modifier le lien odbc ou en rajouter un pour la nouvelle base.

En ligne

#9 25/04/2013 17:03:48

28marc28
Membre

Re : Problème d'ouverture avec odbc

En fait il se connecte bien à la base postgres.

Et je viens de trouver le problème, viviblement il ne prend pas en compte le "C" de Collaborateur mais "c".

A la création j'ai demandé un "C" et à l'ouverture aussi.

A priori et sauf erreur de ma part il ne faut pas mettre de majuscule dans le nom de la base.

Encore merci de votre aide, je ne fis que débuter sur cette nouvelle base et encore beaucoup de choses à apprendre.

28marc28

Hors ligne

#10 25/04/2013 17:05:36

28marc28
Membre

Re : Problème d'ouverture avec odbc

Idem sur la création de table.

Hors ligne

#11 25/04/2013 17:12:48

rjuju
Administrateur

Re : Problème d'ouverture avec odbc

Sur postgres, la casse n'est pas prise en compte sauf si on entoure les noms d'objets de ", sinon tout est considéré comme étant en minuscule. Essayez du coup "Collaborateur" etc.

En ligne

#12 25/04/2013 17:16:21

28marc28
Membre

Re : Problème d'ouverture avec odbc

Je pense que c'est ce que j'avais du faire, voici le source en vb:

    NomBase="Collaborateur"
    DriverODBC = "PostgreSQL ANSI"
    IPServeur = "192.168.3.2"
    LoginServeur = "root"
    PasswordServeur = "mdp"
    Set ConnexMySQL = New ADODB.Connection
    ConnexMySQL.ConnectionString = "DRIVER={" & DriverODBC & "}; SERVER=" & IPServeur & "; DATABASE=" + NomBase + "; UID=" + LoginServeur + ";PWD=" + PasswordServeur + "; OPTION=3"
    ConnexMySQL.Open

Hors ligne

#13 25/04/2013 17:18:16

rjuju
Administrateur

Re : Problème d'ouverture avec odbc

Peut-être quelque chose du genre :  [...] DATABASE=\"" + NomBase + "\"; [...], ou autre selon le format d'échappement nécessaire.

En ligne

#14 25/04/2013 17:33:28

28marc28
Membre

Re : Problème d'ouverture avec odbc

Bon j'arrive pas a passer en majuscule, c'est pas grave je passe tout en minuscule, c'est pas dramatique.

Encore merci.

28marc28

Hors ligne

Pied de page des forums