2013-06-12 15 views
10

Ho cercato di collegare DMS della mia azienda per R utilizzando il comando odbcConnect, ma ottenere il seguente messaggio:mancato collegamento al database ODBC in R

myConn <-odbcConnect("NZSQL", uid="cejacobson", pwd="password") 
Warning messages: 
1: In odbcDriverConnect("DSN=NZSQL;UID=cejacobson;PWD=password") : 
    [RODBC] ERROR: state IM002, code 0, message [unixODBC][Driver Manager]Data source name not found, and no default driver specified 
2: In odbcDriverConnect("DSN=NZSQL;UID=cejacobson;PWD=password") : 
    ODBC connection failed 

Il fatto è che io sono positivo Il nome dell'origine dati è NZSQL e anche il mio uid e la password sono corretti. Qualche idea sul perché R potrebbe non trovare la mia fonte di dati/driver (il driver è, a proposito, specificato e funzionante).

Grazie!

+0

Su quale sistema operativo ci si trova e cos'è il RDBMS? Sai quali driver sono disponibili? È solo unixODBC? –

+1

Hai provato a configurare il database nello strumento "Data Source (ODBC)"? –

+0

Sembra un errore ODBC, non un errore R. Non sta trovando il driver/connessione richiesti. Assicurati di aver impostato prima. –

risposta

4

Ho riscontrato questo stesso problema quando stavo cercando di connettermi a un database Oracle. Alla fine ciò che ha funzionato per me era usare odbcDriverConnect e una stringa di connessione invece di odbcConnect.

myConn <-odbcDriverConnect("Driver={Oracle in OraClient11g_home1};Dbq=NZSQL;Uid=cejacobson;Pwd=password;") 

Puoi controllare https://www.connectionstrings.com/ per la stringa di connessione specifica per il database. Il mio è successo a this one.

Spero che questo aiuti.

0

Ciò che ha funzionato per me era una connessione a 32 bit anziché una connessione a 64 bit.

1

Stavo cercando di accedere al database di SQL Server e ho ottenuto lo stesso errore. Dopo aver utilizzato il formato corretto della connessione db, ho avuto accesso al mio database SQL Server.

dbhandle <- odbcDriverConnect("Driver={SQL Server};Server=mydbhost;Database=mydbname;Trusted_Connection=Yes") 
0

So che questo è vecchio ma assicuratevi anche di rimuovere gli spazi attorno al segno '='. Questo era il mio problema

0

Questo è l'errore IM02 che significa che il nome del DSN non è corretto.

Passare a ODBC e controllare il DSN USER/sistema che si dovrebbe utilizzare. Una volta che il tuo nome DSN è corretto, potresti ottenere l'errore di stato IM014 che è una mancata corrispondenza dell'architettura. In tal caso,

La soluzione più semplice è IN r studio: passare agli strumenti e modificare la versione di R a 32 bit.

Deve essere pronto per il lavoro

Problemi correlati