Sto provando a connettermi a un Microsoft SQL Server da R su Mac/Linux e ho problemi con RJDBC. Quando ho scaricato conducente e jTDS di Microsoft, ma nessuna delle seguenti linee di lavoro:Connessione a MS SQL Server da R su Mac/Linux
library(RJDBC)
drv <- JDBC("com.microsoft.sqlserver.jdbc.SQLServerDriver",
"/Users/victor/Downloads/sqljdbc_3.0/enu/sqljdbc4.jar")
drv1 <- JDBC('net.sourceforge.jtds.jdbc.Driver',
"/Users/victor/Downloads/jtds-1/jtds-1.3.0.jar")
Ognuno restituisce il seguente messaggio di errore:
Error in .jfindClass(as.character(driverClass)[1]) : class not found
Ho il sospetto che il problema potrebbe essere con il male Versione Java: il mio java predefinito è
$ java -version
java version "1.7.0_11"
Java(TM) SE Runtime Environment (build 1.7.0_11-b21)
Java HotSpot(TM) 64-Bit Server VM (build 23.6-b04, mixed mode)
ma ho anche Jave 1.6 installato sulla mia macchina. Ho installato SquirrelSQL e si connette a MS SQL Server senza problemi usando il driver JTDS; la versione Java utilizzata da SquirrelSQL è 1.7.0.11.
Ho eseguito R CMD javareconf
con il seguente risultato:
$ R CMD javareconf
Java interpreter : /usr/bin/java
Java version : 1.7.0_11
Java home path : /Library/Java/JavaVirtualMachines/jdk1.7.0_11.jdk/Contents/Home/jre
Java compiler : /usr/bin/javac
Java headers gen.: /usr/bin/javah
Java archive tool: /usr/bin/jar
Java library path:
JNI linker flags : -framework JavaVM
JNI cpp flags : -I$(JAVA_HOME)/include
Updating Java configuration in /Library/Frameworks/R.framework/Resources
Done.
e rimossi/installati di nuovo pacchetti RJDBC e Rjava, e ancora niente funziona.
Credo di essere bloccato in questo momento, perché non ho molta familiarità con Java/RJDBC e la loro interazione. La ricerca di google ha trovato diverse persone con problemi simili senza soluzione.
Tutti i suggerimenti su come comportarsi correttamente con JDBC o qualsiasi altro modo per connettersi a MS SQL Server da R, saranno molto apprezzati!
UPDATE 1. Bene, la prima affermazione sembra funzionare ora: sto ottenendo una connessione e posso interrogare il database senza problemi. Non sono sicuro di cosa ha risolto il problema - potrebbe essere necessario riavviare la mia sessione mac/R. La seconda istruzione continua a non funzionare, con lo stesso messaggio di errore.
Ho ricevuto questo errore quando ho cambiato da 'R 3' a' pqR'. Tutto quello che posso offrire per una soluzione è usare 'locate sqljdbc4.jar' per trovare qualsiasi cosa abbia bisogno di essere caricata. – isomorphismes