RODBC-Befehl 'sqlQuery' hat Probleme mit Tabellenvariablen in t-SQL
Ich verwende das RODBC-Paket, das ich auf einem Microsoft SQL Server 2012 anwende.
etzt habe ich ein Phänomen entdeckt, das mich verwirr
Wenn ich die folgende Abfrage mit dem RODBC-Befehl sqlQuery ausführe, erhalte ich in R einen leeren Datenrahmen mit den Spalten Country, CID, PriceID und WindID zurück.
DECLARE @tbl_IDs TABLE
(
Country nvarchar(30),
CID nvarchar(5),
PriceID int,
WindID int
)
SELECT * FROM @tbl_Ids
So weit ist alles in Ordnung.
Allerdings, wenn ich versuche, einen Datensatz in die Tabellenvariable zu schreiben und @ auszuführ
DECLARE @tbl_IDs TABLE
(
Country nvarchar(30),
CID nvarchar(5),
PriceID int,
WindID int
)
INSERT INTO @tbl_IDs
VALUES
('Germany', 'DE', 112000001, 256000002);
SELECT * FROM @tbl_Ids
In R ist das Ergebnis dann ein leeres Zeichen anstelle eines Datenrahmens mit einem Datensatz. Dieselbe Abfrage funktioniert immer noch perfekt mit SQL Server Management Studio. Außerdem haben wir das Verhalten des DB-Servers verfolgt, während die R-Query ausgeführt wird, und es scheint, als würde der Server dies perfekt verarbeiten. Es scheint, dass die RODBC-Schnittstelle ein Problem hat, das Ergebnis an die R-Konsole zurückzugeben.
Hat jemand eine Idee, wie dieses Problem gelöst werden kann?