Connessione RODBC di SQL Server

Qualcuno ha un esempio di stringa di connessione per l’utilizzo di RODBC e la connessione a MS SQL Server 2005 o 2008.

Grazie.

library(RODBC) dbhandle <- odbcDriverConnect('driver={SQL Server};server=mysqlhost;database=mydbname;trusted_connection=true') res <- sqlQuery(dbhandle, 'select * from information_schema.tables') 

Tratto da un post per r-help :

  library(RODBC) channel <- odbcDriverConnect("driver=SQL Server;server=01wh155073") initdata<- sqlQuery(channel,paste("select * from test_DB .. test_vikrant")) dim(initdata) odbcClose(channel) 

Prova ad usare il pacchetto RSQLS: https://github.com/martinkabe/RSQLS

Molto veloce spinge i dati da data.frame a SQL Server o da SQL Server a data.frame.

Esempio:

 library(devtools) install_github("martinkabe/RSQLS") library(RSQLS) cs <- set_connString("LAPTOP-USER\\SQLEXPRESS", "Database_Name") push_data(cs, dataFrame, "dbo.TableName", append = TRUE, showprogress = TRUE) df <- pull_data(cs, "SELECT * FROM dbo.TableName", showprogress = TRUE) 

Questa soluzione è molto più veloce e più robusta di RODBC :: sqlSave o DBI :: dbWriteTable .

Per prima cosa devi creare / configurare DSN (connessione ODBC con DB specifico)

Quindi installare la libreria RODBC .

 library(RODBC) myconn <-odbcConnect("MyDSN", uid="***", pwd="*******") fetchData<- sqlQuery(myconn, "select * from tableName") View(fetchData) close(myconn)