2017-11-24 3 views
1

Ich verwende RStudio mit Paket RODBC den folgenden Code verwendenAbfrage Oracle DNS in RStudio

require(RODBC) 
channel<-odbcConnect(dsn = "USA", uid = "AA", pwd = "***") 
odbcGetInfo(channel) 

Diese alle Details zurück, aber wenn ich versuche, und tun, um eine SQL-Abfrage

test<-sqlQuery(channel,"select * from cnty", rows_at_time = 1) 

Es gibt eine Fehler mit

Dies funktioniert, wenn ich Microsoft AccessDB - Externe Daten - OBBC DataBase - Link zur Datenquelle öffnen Klicken Sie auf Computer-Datenquelle und wählen Sie die Quelle aus, die es mir dann ermöglicht, eine Auswahlabfrage durchzuführen.

Ich habe auch versucht

debug(odbcFetchRows) test<-sqlQuery(channel,"select * from cnty", rows_at_time = 1) 

mit dieser Funktion wird

function (channel, max = 0, buffsize = 1000, nullstring = NA_character_, 
    believeNRows = TRUE) 
{ 
    if (!odbcValidChannel(channel)) 
    stop("first argument is not an open RODBC channel") 
    .Call(C_RODBCFetchRows, attr(channel, "handle_ptr"), max, 
    buffsize, as.character(nullstring), believeNRows) 
} 
+0

mit habe ich glaube ich jetzt diese Arbeit teilweise bekam durch Hinzufügen, believeNRows = FALSE). Dies hat den Fehler gestoppt, obwohl jetzt, wenn ich versuche, eine Select-Abfrage zu tun, zeigt es einen Fehler von "42S02 942 [Oracle] [ODBC] [Ora] ORA-00942: Tabelle oder Ansicht existiert nicht, obwohl ich weiß, weil ich kann in Excel oder AccessDB darauf zugreifen. – New2Programming

Antwort

1

ich diese Arbeit bekam von test<-sqlQuery(channel,"select * from cnty", rows_at_time = 1,believeNRows = FALSE)