MyConnString = "Provider=MSDASQL.1;Driver={PostgreSQL};Server=MYSERVER;Port=5432;Database=MYDB;Uid=MyUser;Pwd=******;";mi veniva restituito sempre il seguente errore:
ERROR [IM002] [Microsoft][Driver Manager ODBC] Nome origine dati non trovato e driver predefinito non specificato.I driver li ho scaricati da http://www.postgresql.org/ftp/odbc/versions. Dopo vari tentativi, ho creato un'origine dati ODBC e ho provato ad aprire la connessione con una stringa del tipo:
MyConnString = "DSN=PostgreSQL30;UID=MyUser;PWD=******";Dove PostgreSQL30 è il nome scelto per la mia origine dati ODBC. La connessione è stata instaurata correttamente. Dunque l'errore veniva generato da qualcosa che specificavo male all'interno della stringa di connessione DNS-less: probabilmente la versione del driver non era corretta. Mi chiedevo come fosse possibile se in tutta la documentazione reperibile sulla rete il nome del driver era sempre indicato come Driver={PostgreSQL}. Ragionando come in alcuni post trovati, ho guardato meglio i parametri della origine dati (DSN) ODBC precedentemente creata ed ho notato che il nome del driver era "PostgreSQL ANSI". Ho provato a correggetre il nome del driver nella stringa di connessione
MyConnString = "Provider=MSDASQL.1;Driver={PostgreSQL ANSI};Server=MYSERVER;Port=5432;Database=MYDB;Uid=MyUser;Pwd=******;";e tutto ha funzionato correttamente. Capito? Ciao, allo prossima.
[da 1 a 1 di 1 commenti] | Indietro