2016-07-14 23 views
1

select * from openquery (oracle, 'select * from tablename1') --- dies funktioniert in SQL ServerVerbinden mit einem Verbindungsserver in R

Ich benutzte das RODBC Paket

fd1 <- sqlQuery(dbhandle, 'select * 
      FROM t1') -- This works 
fd2 <- sqlQuery(dbhandle, 'select * 
      FROM openquery (Oracle, "select * from tablname1 where id is null")') 

--- Das funktioniert. Aber wenn ich das Objekt fd2 nennen, erhalte ich die folgende -

[1] "42000 102 [Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near 'select * from tablename1 where id is null'."

[2] "[RODBC] ERROR: Could not SQLExecDirect 'select * from openquery (oracle, \"select * from tablename1 where id is null\")'"

, wie dieses Problem beheben?

Antwort

0

fd2 verwendet doppelte Anführungszeichen um die eingebettete SQL-Abfrage. T-SQL erfordert einfache Anführungszeichen. Tun Sie dies stattdessen:

fd2 <- sqlQuery(dbhandle, 
    'select * FROM openquery (Oracle, \'select * from tablname1 where id is null\')') 
+0

Vielen Dank! – NM24

+0

Bitte markieren Sie die Antwort als akzeptiert. Danke für die Verwendung des Stack-Überlaufs! – patrickmdnet